PageSourceSearch

http://www.ntanime.com/js/jquery.soChange.js

js ntanime.com collected 2026-10-06 13:17:35 UTC 3,280 bytes, 118 lines download raw bytes

1(function($){
2	$.fn.extend({
3		"soChange": function(o){
4
5		o= $.extend({
6			thumbObj:null,//导航对象
7			botPrev:null,//按钮上一个
8			botNext:null,//按钮下一个
9			thumbNowClass:'now',//导航对象当前的class,默认为now
10			thumbOverEvent:true,//鼠标经过thumbObj时是否切换对象,默认为true,为false时,只有鼠标点击thumbObj才切换对象
11			slideTime:1000,//平滑过渡时间,默认为1000ms
12			autoChange:true,//是否自动切换,默认为true
13			clickFalse:true,//导航对象如果有链接,点击是否链接无效,即是否返回return false,默认是return false链接无效,当thumbOverEvent为false时,此项必须为true,否则鼠标点击事件冲突
14			overStop:true,//鼠标经过切换对象时,切换对象是否停止切换,并于鼠标离开后重启自动切换,前提是已开启自动切换
15			changeTime:5000,//自动切换时间
16			delayTime:300//鼠标经过时对象切换迟滞时间,推荐值为300ms
17		}, o || {});
18
19		var _self = $(this);
20		var thumbObj;
21		var size = _self.size();
22		var nowIndex =0; //定义全局指针
23		var index;//定义全局指针
24		var startRun;//预定义自动运行参数
25		var delayRun;//预定义延迟运行参数
26
27	//主切换函数
28	function fadeAB () {
29		if (nowIndex != index) {
30			if (o.thumbObj!=null) {
31			$(o.thumbObj).removeClass(o.thumbNowClass).eq(index).addClass(o.thumbNowClass);}
32			if (o.slideTime <= 0) {
33				_self.eq(nowIndex).hide();
34				_self.eq(index).show();	
35			}else{
36				_self.eq(nowIndex).fadeOut(o.slideTime);
37				_self.eq(index).fadeIn(o.slideTime);
38			}
39			nowIndex = index;
40			if (o.autoChange==true) {
41			clearInterval(startRun);//重置自动切换函数
42			startRun = setInterval(runNext,o.changeTime);}
43			}
44	}
45
46
47	//切换到下一个
48	function runNext() {
49		index =  (nowIndex+1)%size;
50		fadeAB();
51	}
52
53	//初始化
54			_self.hide().eq(0).show();
55
56	//点击任一图片
57		if (o.thumbObj!=null) {
58		thumbObj = $(o.thumbObj);
59
60	//初始化thumbObj
61			thumbObj.removeClass(o.thumbNowClass).eq(0).addClass(o.thumbNowClass);
62			thumbObj.click(function () {
63				index = thumbObj.index($(this));
64				fadeAB();
65				if (o.clickFalse == true) {
66					return false;
67				}
68			});
69			if (o.thumbOverEvent == true) {
70			thumbObj.mouseenter(function () {
71				index = thumbObj.index($(this));
72				delayRun = setTimeout(fadeAB,o.delayTime);
73			});
74			thumbObj.mouseleave(function () {
75				clearTimeout(delayRun);
76			});
77			}
78		}
79
80	//点击上一个
81		if (o.botNext!=null) {
82			$(o.botNext).click(function () {
83				if(_self.queue().length<1){
84				runNext();}
85				return false;
86			});
87		}
88
89	//点击下一个
90		if (o.botPrev!=null) {
91			$(o.botPrev).click(function () {
92				if(_self.queue().length<1){
93				index = (nowIndex+size-1)%size;
94				fadeAB();}
95				return false;
96		});
97		}
98
99	//自动运行
100		if (o.autoChange==true) {
101		startRun = setInterval(runNext,o.changeTime);
102		if (o.overStop == true) {
103			_self.mouseenter(function () {
104				clearInterval(startRun);//重置自动切换函数
105				
106			});
107			_self.mouseleave(function () {
108				startRun = setInterval(runNext,o.changeTime);
109			});
110			}
111		}
112
113	}
114
115	})
116
117})(jQuery);
118

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.