PageSourceSearch

https://djsline.com/wp-content/themes/beaton/js/hoverex.js?ver=7.1.2

js djsline.com collected 2026-10-04 20:20:10 UTC 6,956 bytes, 208 lines download raw bytes

1/*
2*	jQuery HoverEx Script
3*	by hkeyjun
4*   http://codecanyon.net/user/hkeyjun	
5*/
6;(function($){
7	var HoverEx = {
8		fn:{
9			moveZoom:function(obj,e)
10			{
11				var h =obj.height(),w=obj.width(),t=e.pageY-obj.offset().top,l=e.pageX-obj.offset().left;
12				var $largeImg = obj.find("img");
13				var dataZoom = obj.data("zoom");
14				if(dataZoom&&dataZoom!="auto")
15				{
16					var zoomNum = parseFloat(dataZoom);
17					$largeImg.css({"width":w*zoomNum+"px","height":h*zoomNum+"px","top":-t*(zoomNum-1)+"px","left":-l*(zoomNum-1)+"px"});
18				}
19				else
20				{
21					var zoomNum = $largeImg.width()/w;
22					$largeImg.css({"top":-t*(zoomNum-1)+"px","left":-l*(zoomNum-1)+"px"});
23				}
24			},
25			changeZoom:function(obj,e,delta, deltaX, deltaY)
26			{
27				var $largeImg = obj.find("img");
28				var currentZoom = obj.data("zoom");
29				currentZoom = currentZoom=="auto"?$largeImg.width()/obj.width():parseFloat(currentZoom);
30				var zoomStep = obj.data("zoomstep");
31				zoomStep = zoomStep?parseFloat(zoomStep):0.5;
32				var zoomRange = obj.data("zoomrange");
33				zoomRange = zoomRange?zoomRange.split(","):"1,4";
34				var zoomMin = parseFloat(zoomRange[0]),zoomMax = parseFloat(zoomRange[1])>currentZoom?parseFloat(zoomRange[1]):currentZoom;
35				var op = deltaY>0?1:-1;
36				var	nextZoom =Math.round((currentZoom+zoomStep*op)*10)/10.0;
37				if(nextZoom >=zoomMin&& nextZoom <=zoomMax)
38				{
39					obj.data("zoom",nextZoom);
40					HoverEx.fn.showZoomState(obj,nextZoom);
41					HoverEx.fn.moveZoom(obj,e);
42				}
43				
44			},
45			showZoomState:function(obj,state)
46			{
47				var $zoomState =obj.find(".he-zoomstate");
48				if($zoomState.length == 0)
49				{
50					$zoomState = $('<span class="he-zoomstate">'+state+'X</span>').appendTo(obj);
51				}
52				$zoomState.text(state+"X").stop(true,true).fadeIn(300).delay(200).fadeOut(300);
53			},
54			switchImg:function(slider,type)
55			{
56				var animation = slider.data("animate");
57				animation = animation?animation:"random";
58				if(animation =="random")
59				{
60					var animations =["fadeIn","fadeInLeft","fadeInRight","fadeInUp","fadeInDown","rotateIn","rotateInLeft","rotateInRight","rotateInUp","rotateInDown","bounce","bounceInLeft","bounceInRight","bounceInUp","bounceInDown","elasticInLeft","elasticInRight","elasticInUp","elasticInDown","zoomIn","zoomInLeft","zoomInRight","zoomInUp","zoomInDown","jellyInLeft","jellyInRight","jellyInDown","jellyInUp","flipInLeft","flipInRight","flipInUp","flipInDown","flipInV","flipInH"];
61					animation =animations[Math.floor(Math.random()*animations.length)];
62				}
63				var $imgs =slider.find("img"); 
64				if($imgs.length>1)
65				{
66					if(type>0)
67					{
68						$imgs.eq(0).attr("class","a0").appendTo(slider);
69						$imgs.eq(1).attr("class","a0 "+animation);
70					}
71					else
72					{
73						$imgs.eq($imgs.length-1).attr("class","a0 "+animation).prependTo(slider);
74						$imgs.eq(0).attr("class","a0");
75					}
76				}
77			}
78		}
79	};
80	
81	$(function(){
82		$(document).on('mouseenter','.he-wrap',function(){
83				var $view = $(this).find(".he-view").addClass("he-view-show");
84				$("[data-animate]",$view).each(function(){
85					var animate = $(this).data("animate");
86					$(this).addClass(animate);
87				});
88				$(this).find(".he-zoom").addClass("he-view-show");
89		}).on('mouseleave','.he-wrap',function(){
90				var $view = $(this).find(".he-view").removeClass("he-view-show");
91				$("[data-animate]",$view).each(function(){
92					var animate = $(this).data("animate");
93					$(this).removeClass(animate);
94				});
95				$(this).find(".he-zoom").removeClass("he-view-show");
96		   }).on('mousewheel','.he-wrap',function(e,delta, deltaX, deltaY){
97				if($(this).find(".he-sliders").length==1)
98				{
99					var $slider = $(this).find(".he-sliders");
100					var op = deltaY>0?1:-1;
101					HoverEx.fn.switchImg($slider,op);
102					e.preventDefault();
103				}
104				else if($(this).find(".he-zoom").length==1)
105				{
106					var $zoom =$(this).find(".he-zoom");
107					HoverEx.fn.changeZoom($zoom,e,delta,deltaX,deltaY);
108					e.preventDefault();
109				}
110		}).on('mousemove','.he-zoom',function(e){
vendor: 2,846 bytes, lines 111-208
111			HoverEx.fn.moveZoom($(this),e);
112		}).on('click','.he-pre',function(){
113			var $slider =$(this).parents(".he-wrap").find(".he-sliders");
114			HoverEx.fn.switchImg($slider,-1);
115		}).on('click','.he-next',function(){
116			var $slider =$(this).parents(".he-wrap").find(".he-sliders");
117			HoverEx.fn.switchImg($slider,1);
118		});	   
119
120	
121		
122	});
123})(jQuery);
124
125/*! Copyright (c) 2011 Brandon Aaron (http://brandonaaron.net)
126 * Licensed under the MIT License (LICENSE.txt).
127 *
128 * Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers.
129 * Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix.
130 * Thanks to: Seamus Leahy for adding deltaX and deltaY
131 *
132 * Version: 3.0.6
133 * 
134 * Requires: 1.2.2+
135 */
136
137(function($) {
138
139var types = ['DOMMouseScroll', 'mousewheel'];
140
141if ($.event.fixHooks) {
142    for ( var i=types.length; i; ) {
143        $.event.fixHooks[ types[--i] ] = $.event.mouseHooks;
144    }
145}
146
147$.event.special.mousewheel = {
148    setup: function() {
149        if ( this.addEventListener ) {
150            for ( var i=types.length; i; ) {
151                this.addEventListener( types[--i], handler, false );
152            }
153        } else {
154            this.onmousewheel = handler;
155        }
156    },
157    
158    teardown: function() {
159        if ( this.removeEventListener ) {
160            for ( var i=types.length; i; ) {
161                this.removeEventListener( types[--i], handler, false );
162            }
163        } else {
164            this.onmousewheel = null;
165        }
166    }
167};
168
169$.fn.extend({
170    mousewheel: function(fn) {
171        return fn ? this.bind("mousewheel", fn) : this.trigger("mousewheel");
172    },
173    
174    unmousewheel: function(fn) {
175        return this.unbind("mousewheel", fn);
176    }
177});
178
179
180function handler(event) {
181    var orgEvent = event || window.event, args = [].slice.call( arguments, 1 ), delta = 0, returnValue = true, deltaX = 0, deltaY = 0;
182    event = $.event.fix(orgEvent);
183    event.type = "mousewheel";
184    
185    // Old school scrollwheel delta
186    if ( orgEvent.wheelDelta ) { delta = orgEvent.wheelDelta/120; }
187    if ( orgEvent.detail     ) { delta = -orgEvent.detail/3; }
188    
189    // New school multidimensional scroll (touchpads) deltas
190    deltaY = delta;
191    
192    // Gecko
193    if ( orgEvent.axis !== undefined && orgEvent.axis === orgEvent.HORIZONTAL_AXIS ) {
194        deltaY = 0;
195        deltaX = -1*delta;
196    }
197    
198    // Webkit
199    if ( orgEvent.wheelDeltaY !== undefined ) { deltaY = orgEvent.wheelDeltaY/120; }
200    if ( orgEvent.wheelDeltaX !== undefined ) { deltaX = -1*orgEvent.wheelDeltaX/120; }
201    
202    // Add event and delta to the front of the arguments
203    args.unshift(event, delta, deltaX, deltaY);
204    
205    return ($.event.dispatch || $.event.handle).apply(this, args);
206}
207
208})(jQuery);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.