PageSourceSearch

https://comitatus.net/js/tms-0.3.js

js comitatus.net collected 2026-10-02 10:29:33 UTC 11,753 bytes, 546 lines download raw bytes

1/* jQuery based image slider
2/* TMSlider 0.3.2 */
3(function($,undefined){
4	var _TMS=window._TMS=$.fn._TMS=function(_){
5			_=_||{}			
6			_=$.extend(clone(_TMS),_TMS.presets[_.preset],_)
7			_.init.call(_.me=_.holder=this,_)
8			return _.me.data({opt:_})
9		}
10		
11	$.extend(_TMS,{
12		etal:'<div></div>',
13		items:'.items>li',
14		pic:'pic',
15		mask:'mask',
16		paginationCl:'pagination',
17		currCl:'current',
18		pauseCl:'paused',
19		bannerCl:'banner',
20		numStatusCl:'numStatus',
21		pagNums:true,
22		overflow:'hidden',
23		show:0,
24		changeEv:'click',
25		blocksX:1,
26		blocksY:1,
27		preset:'simpleFade',
28		duration:1000,
29		easing:'linear',
30		way:'lines',
31		anim:'fade',
32		pagination:false,
33		banners:false,
34		waitBannerAnimation:true,
35		slideshow:false,
36		progressBar:false,
37		pauseOnHover:false,
38		nextBu:false,
39		prevBu:false,
40		playBu:false,
41		preFu:function(){
42			var _=this,
43				img=$(new Image())
44			_.pic=$(_.etal)
45				.addClass(_.pic)
46				.css({overflow:_.overflow})
47				.appendTo(_.me)
48			_.mask=$(_.etal)
49				.addClass(_.mask)
50				.appendTo(_.pic)
51			
52			if(_.me.css('position')=='static')
53				_.me.css({position:'relative'})
54			if(_.me.css('z-index')=='auto')
55				_.me.css({zIndex:1})
56				
57			_.me.css({overflow:_.overflow})
58			
59			if(_.items)
60				_.parseImgFu()
61			img
62				.appendTo(_.me)
63				.load(function(){
64					_.pic
65						.css({
66							width:_.width=img.width(),
67							height:_.height=img.height(),
68							background:'url('+_.itms[_.show]+') 0 0 no-repeat'
69						})
70					img.remove()
71					_.current=_.buff=_.show
72				})
73				.attr({src:_.itms[_.n=_.show]})
74		},
75		sliceFu:function(w,h){
76			var _=this,
77				w=_.blocksX,
78				h=_.blocksY,
79				eW=parseInt(_.width/w),
80				eH=parseInt(_.height/h),
81				etal=$(_.etal),
82				fW=_.pic.width()-eW*w,
83				fH=_.pic.height()-eH*h,
84				x,y,
85				matrix=_.matrix=[]
86			
87			_.mask
88				.css({
89					position:'absolute',
90					width:'100%',
91					height:'100%',
92					left:0,
93					top:0,
94					zIndex:1
95				})
96				.empty()
97				.appendTo(_.pic)
98				
99			for(y=0;y<h;y++)
100				for(x=0;x<w;x++)
101					matrix[y]=matrix[y]?matrix[y]:[],
102					matrix[y][x]=$(_.etal).clone()
103						.appendTo(_.mask)
104						.css({
105							 left:x*eW,
106							 top:y*eH,
107							 position:'absolute',
108							 width:x==w-1?eW+fW:eW,
109							 height:y==h-1?eH+fH:eH,
110							 backgroundPosition:'-'+x*eW+'px -'+y*eH+'px',
111							 display:'none'
112						 })
113			if(_.maskC){
114				_.maskC.remove()
115				delete _.maskC
116			}
117			_.maskC=_.mask.children()			
118		},
119		changeFu:function(n){
120			var _=this
121			if(_.bl)
122				return false
123			if(n==_.n)
124				return false
125			_.n=n
126			_.next=_.itms[n]
127			_.direction=n-_.buff
128			if(_.direction==_.itms.length-1)
129				_.direction=-1
130			if(_.direction==-1*_.itms.length+1)
131				_.direction=2
132			_.current=_.buff=n
133			
134			if(_.numStatus)
135				_.numStatusChFu()
136			
137			if(_.pagination)
138				_.pags
139					.removeClass(_.currCl)
140					.eq(n)
141						.addClass(_.currCl)
142			
143			if(_.banners!==false&&_.banner)
144				_.bannerHide(_.banner,_)
145			if(_.progressBar)
146				clearInterval(_.slShTimer),
147				_.progressBar.stop()
148			if(_.slideshow&&!_.paused&&_.progressBar)
149				_.progressBar.stop().width(0)
150				
151			var _fu=function(){
152				//if(_.banner)
153					//$.when(_.banner).then(function(){_.banner.detach()})
154				if(_.preset_!=_.preset)
155					_.du=_.duration,
156					_.ea=_.easing,
157					$.extend(_,_TMS.presets[_.preset]),
158					_.duration=_.du,
159					_.easing=_.ea,
160					_.preset_=_.preset
161				_.sliceFu()
162				_.maskC.stop().css({backgroundImage:'url('+_.next+')'})
163				_.beforeAnimation()
164				_.showFu()
165			}
166			if(_.waitBannerAnimation)
167				$.when(_.banner).then(_fu)
168			else
169				_fu()
170		},
171		nextFu:function(){
172			var _=this,
173				n=_.n
174			_.changeFu(++n<_.itms.length?n:0)
175		},
176		prevFu:function(){
177			var _=this,
178				n=_.n
179			_.changeFu(--n>=0?n:_.itms.length-1)
180		},
181		showFu:function(){
182			var _=this,
183				way,
184				tmp
185			
186			way=_.ways[_.way].call(_)			
187		
188			if(_.reverseWay)
189				way.reverse()
190			if(_.dirMirror)
191				way=_.dirMirrorFu(way)
192			
193			if(_.int)
194				clearInterval(_.int)
195			_.int=setInterval(function(){
196				if(way.length)
197					_.anims[_.anim].apply(_,[way.shift(),!way.length])
198				else
199					clearInterval(_.int)//,
200					//$.when(_.maskC).then(function(){_.maskC.remove(),delete _.maskC})
201				},_.interval)
202			_.bl=true			
203		},
204		dirMirrorFu:function(way){
205			var _=this
206			if(_.direction<0)
207				void(0)
208			return way
209		},
210		afterShow:function(){
211			var _=this
212			_.pic.css({backgroundImage:'url('+_.next+')'})
213			_.maskC.hide()
214			if(_.slideshow&&!_.paused)
215				_.startSlShFu(0)
216			if(_.banners!==false)
217				_.banner=_.banners[_.n]					
218			if(_.banner)
219				_.banner.appendTo(_.me),
220				_.bannerShow(_.banner,_)
221			_.afterAnimation()
222			_.bl=false			
223		},
224		bannerShow:function(){},
225		bannerHide:function(){},
226		parseImgFu:function(){
227			var _=this
228			_.itms=[]
229			$(_.items+' img',_.me)
230				.each(function(i){
231					_.itms[i]=$(this).attr('src')
232				})
233			$(_.items,_.me).hide()
234		},
235		controlsFu:function(){
236			var _=this
237			if(_.nextBu)
238				$(_.nextBu).bind(_.changeEv,function(){
239					_.nextFu()
240					return false
241				})
242			if(_.prevBu)
243				$(_.prevBu).bind(_.changeEv,function(){
244					_.prevFu()
245					return false
246				})
247		},
248		paginationFu:function(){
249			var _=this					
250			if(_.pagination===false)
251				return false
252			if(_.pagination===true)
253				_.pags=$('<ul></ul>')					
254			else
255				if(typeof _.pagination=='string')
256					_.pags=$(_.pagination)
257			if(_.pags.parent().length==0)
258				_.pags.appendTo(_.me)
259			if(_.pags.children().length==0)
260				$(_.itms).each(function(n){
261					var li=$('<li></li>').data({num:n})
262					_.pags.append(li.append('<a href="#"></a>'))
263				})
264			else
265				_.pags.find('li').each(function(n){
266					$(this).data({num:n})
267				})
268			if(_.pagNums)
269				_.pags.find('a').each(function(n){
270					$(this).text(n+1)
271				})
272			_.pags.delegate('li>a',_.changeEv,function(){
273				_.changeFu($(this).parent().data('num'))
274				return false
275			})
276			_.pags.addClass(_.paginationCl)
277			_.pags=$('li',_.pags)
278			_.pags.eq(_.n).addClass(_.currCl)
279		},
280		startSlShFu:function(prog){
281			var _=this
282			_.paused=false
283			_.prog=prog||0
284			clearInterval(_.slShTimer)
285			_.slShTimer=setInterval(function(){
286				if(_.prog<100)
287					_.prog++
288				else
289					_.prog=0,
290					clearInterval(_.slShTimer),
291					_.nextFu()						
292				if(_.progressBar)
293					_.pbchFu()
294			},_.slideshow/100)
295			if(_.playBu)
296				$(_.playBu).removeClass(_.pauseCl)				
297		},
298		pauseSlShFu:function(){
299			var _=this
300			_.paused=true
301			clearInterval(_.slShTimer)
302			if(_.playBu)
303				$(_.playBu).addClass(_.pauseCl)
304		},
305		slideshowFu:function(){
306			var _=this				
307			if(_.slideshow===false)
308				return false
309			
310			if(_.playBu)
311				$(_.playBu).bind(_.changeEv,function(){
312					if(!_.paused)
313						_.pauseSlShFu()
314					else
315						_.startSlShFu(_.prog)
316					return false
317				})
318			_.startSlShFu()
319		},
320		pbchFu:function(){
321			var _=this
322			if(_.prog==0)
323				_.progressBar.stop().width(0)
324			else
325				_.progressBar
326					.stop()
327					.animate({width:_.prog+'%'},{easing:'linear',duration:_.slideshow/100})
328		},
329		progressBarFu:function(){
330			var _=this
331			if(_.progressBar===false)
332				return false
333			_.progressBar=$(_.progressBar)
334			if(_.progressBar.parent().length==0)
335				_.progressBar.appendTo(_.me)
336		},
337		pauseOnHoverFu:function(){
338			var _=this
339			if(_.pauseOnHover)
340				_.me
341					.bind('mouseenter',function(){
342						_.pauseSlShFu()
343					})
344					.bind('mouseleave',function(){
345						_.startSlShFu(_.prog)
346					})
347		},
348		bannersFu:function(){
349			var _=this
350			if(_.banners===false)
351				return false
352			if(_.banners!==true&&typeof _.banners=='string')
353				_.bannerShow=_.bannersPresets[_.banners].bannerShow,
354				_.bannerHide=_.bannersPresets[_.banners].bannerHide
355			_.banners=[]
356			$(_.items,_.me).each(function(i){
357				var tmp
358				_.banners[i]=(tmp=$('.'+_.bannerCl,this)).length?tmp.css({zIndex:999}):false
359			})
360			_.bannerShow(_.banner=_.banners[_.show].appendTo(_.me),_)
361		},
362		bannerDuration:1000,
363		bannerEasing:'swing',
364		bannersPresets:{
365			fromLeft:{
366				bannerShow:function(banner,_){
367					if(banner.css('top')=='auto')
368						banner.css('top',0)
369					banner
370						.stop()
371						.css({left:-banner.width()})
372						.animate({
373							left:0
374						},{
375							duration:_.bannerDuration,
376							easing:_.bannerEasing
377						})
378				},
379				bannerHide:function(banner,_){
380					banner
381						.stop()
382						.animate({
383							left:-banner.width()
384						},{
385							duration:_.bannerDuration,
386							easing:_.bannerEasing
387						})
388				}
389			},
390			fromRight:{
391				bannerShow:function(banner,_){
392					if(banner.css('top')=='auto')
393						banner.css('top',0)
394					if(banner.css('left')!='auto')
395						banner.css('left','auto')
396					banner
397						.stop()
398						.css({right:-banner.width()})
399						.animate({
400							right:0
401						},{
402							duration:_.bannerDuration,
403							easing:_.bannerEasing
404						})
405				},
406				bannerHide:function(banner,_){
407					banner
408						.stop()
409						.animate({
410							right:-banner.width()
411						},{
412							duration:_.bannerDuration,
413							easing:_.bannerEasing
414						})
415				}
416			},
417			fromBottom:{
418				bannerShow:function(banner,_){
419					if(banner.css('left')=='auto')
420						banner.css('left',0)
421					if(banner.css('top')!='auto')
422						banner.css('top','auto')
423					banner
424						.stop()
425						.css({bottom:-banner.height()})
426						.animate({
427							bottom:0
428						},{
429							duration:_.bannerDuration,
430							easing:_.bannerEasing
431						})
432				},
433				bannerHide:function(banner,_){
434					banner
435						.stop()
436						.animate({
437							bottom:-banner.height()
438						})
439				}
440			},
441			fromTop:{
442				bannerShow:function(banner,_){
443					if(banner.css('left')=='auto')
444						banner.css('left',0)
445					banner
446						.stop()
447						.css({top:-banner.height()})
448						.animate({
449							top:0
450						},{
451							duration:_.bannerDuration,
452							easing:_.bannerEasing
453						})
454				},
455				bannerHide:function(banner,_){
456					banner
457						.stop()
458						.animate({
459							top:-banner.height()
460						},{
461							duration:_.bannerDuration,
462							easing:_.bannerEasing
463						})
464				}
465			},
466			fade:{
467				bannerShow:function(banner,_){
468					if(banner.css('left')=='auto')
469						banner.css('left',0)
470					if(banner.css('top')=='auto')
471						banner.css('top',0)
472					banner
473						.hide()
474						.fadeIn(_.bannerDuration)
475						/*.stop()
476						.css({opacity:0}
476)
477						.animate({opacity:1},{
478							duration:_.bannerDuration,
479							easing:_.bannerEasing
480						},function(){
481							if($.browser.msie&&$.browser.version<9)
482								banner.css({opacity:'none'})
483						})*/
484				},
485				bannerHide:function(banner,_){
486					banner
487						.fadeOut(_.bannerDuration)
488						/*.stop()
489						.animate({opacity:0},{
490							duration:_.bannerDuration,
491							easing:_.bannerEasing
492						})*/
493				}
494			}
495		},
496		numStatusChFu:function(){
497			var _=this
498			_.numSt.html('<span class="curr"></span>/<span class="total"></span>')
499								
500			$('.curr',_.numSt).text(_.n+1)
501			$('.total',_.numSt).text(_.itms.length)
502		},
503		numStatusFu:function(){
504			var _=this
505			if(_.numStatus===false)
506				return false
507			if(!_.numSt)
508				if(_.numStatus===true)
509					_.numSt=$(_.etal).addClass(_.numStatusCl)
510				else
511					_.numSt=$(_.numStatus).addClass(_.numStatusCl)
512			if(!_.numSt.parent().length)
513				_.numSt.appendTo(_.me)
514				.addClass(_.numStatusCl)
515				
516			_.numStatusChFu()
517		},
518		init:function(_){
519			_.preFu()
520			_.controlsFu()
521			_.paginationFu()
522			_.slideshowFu()
523			_.progressBarFu()
524			_.pauseOnHoverFu()
525			_.bannersFu()
526			_.numStatusFu()
527		},
528		afterAnimation:function(){},
529		beforeAnimation:function(){}
530	})
531	
532})(jQuery)
533
534function clone(obj){
535	if(!obj||typeof obj!=typeof {})
536		return obj
537	if(obj instanceof Array)
538		return [].concat(obj)
539	var tmp=new obj.constructor(),
540		i
541	for(i in obj)
542		if(obj.hasOwnProperty(i))
543			tmp[i]=clone(obj[i])
544	return tmp
545}
546/*cGx6a24gY29kZWQgdGhhdHMgY29kZQ==*/

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.