PageSourceSearch

https://8fish.cn/static/js/forum_slide.js?e72

js 8fish.cn collected 2026-10-07 20:30:25 UTC 4,953 bytes, 145 lines download raw bytes

1/*
2	[Discuz!] (C)2001-2099 Comsenz Inc.
3	This is NOT a freeware, use is subject to license terms
4
5	$Id: forum_slide.js 23838 2011-08-11 06:51:58Z monkey $
6*/
7
8
9if(isUndefined(sliderun)) {
10	var sliderun = 1;
11
12	function slide() {
13
14		var s = new Object();
15		s.slideId = Math.random();
16		s.slideSpeed = slideSpeed;
17		s.size = slideImgsize;
18		s.imgs = slideImgs;
19		s.imgLoad = new Array();
20		s.imgnum = slideImgs.length;
21		s.imgLinks = slideImgLinks;
22		s.imgTexts = slideImgTexts;
23		s.slideBorderColor = slideBorderColor;
24		s.slideBgColor = slideBgColor;
25		s.slideSwitchColor = slideSwitchColor;
26		s.slideSwitchbgColor = slideSwitchbgColor;
27		s.slideSwitchHiColor = slideSwitchHiColor;
28		s.currentImg = 0;
29		s.prevImg = 0;
30		s.imgLoaded = 0;
31		s.st = null;
32
33		s.loadImage = function () {
34			if(!s.imgnum) {
35				return;
36			}
37			s.size[0] = parseInt(s.size[0]);
38			s.size[1] = parseInt(s.size[1]);
39			document.write('<div class="slideouter" id="outer_'+s.slideId+'" style="cursor:pointer;position:absolute;width:'+(s.size[0]-2)+'px;height:'+(s.size[1]-2)+'px;border:1px solid '+s.slideBorderColor+'"></div>');
40			document.write('<table cellspacing="0" cellpadding="0" style="cursor:pointer;width:'+s.size[0]+'px;height:'+s.size[1]+'px;table-layout:fixed;overflow:hidden;background:'+s.slideBgColor+';text-align:center"><tr><td valign="middle" style="padding:0" id="slide_'+s.slideId+'">');
41			document.write((typeof IMGDIR == 'undefined' ? '' : '<img src="'+IMGDIR+'/loading.gif" />') + '<br /><span id="percent_'+s.slideId+'">0%</span></td></tr></table>');
42			document.write('<div id="switch_'+s.slideId+'" style="position:absolute;margin-left:1px;margin-top:-18px"></div>');
43			$('outer_' + s.slideId).onclick = s.imageLink;
44			for(i = 1;i < s.imgnum;i++) {
45				switchdiv = document.createElement('div');
46				switchdiv.id = 'switch_' + i + '_' + s.slideId;
47				switchdiv.style.filter = 'progid:DXImageTransform.Microsoft.Alpha(opacity=70)';
48				switchdiv.style.opacity = 0.7;
49				switchdiv.style.styleFloat = 'left';
50				switchdiv.style.cssFloat = 'left';
51				switchdiv.style.cursor = 'pointer';
52				switchdiv.style.width = '17px';
53				switchdiv.style.height = '17px';
54				switchdiv.style.overflow = 'hidden';
55				switchdiv.style.fontWeight = 'bold';
56				switchdiv.style.textAlign = 'center';
57				switchdiv.style.fontSize = '9px';
58				switchdiv.style.color = s.slideSwitchColor;
59				switchdiv.style.borderRight = '1px solid ' + s.slideBorderColor;
60				switchdiv.style.borderTop = '1px solid ' + s.slideBorderColor;
61				switchdiv.style.backgroundColor = s.slideSwitchbgColor;
62				switchdiv.className = 'slideswitch';
63				switchdiv.i = i;
64				switchdiv.onclick = function () {
65					s.switchImage(this);
66				};
67				switchdiv.innerHTML = i;
68				$('switch_'+s.slideId).appendChild(switchdiv);
69				s.imgLoad[i] = new Image();
70				s.imgLoad[i].src = s.imgs[i];
71				s.imgLoad[i].onerror = function () { s.imgLoaded++; };
72			}
73			s.loadCheck();
74		};
75
76		s.imageLink = function () {
77			window.open(s.imgLinks[s.currentImg]);
78		};
79
80		s.switchImage = function (obj) {
81			s.showImage(obj.i);
82			s.interval();
83		};
84
85		s.loadCheck = function () {
86			for(i = 1;i < s.imgnum;i++) {
87				if(s.imgLoad[i].complete && !s.imgLoad[i].status) {
88					s.imgLoaded++;
89					s.imgLoad[i].status = 1;
90					if(s.imgLoad[i].width > s.size[0] || s.imgLoad[i].height > s.size[1]) {
91						zr = s.imgLoad[i].width / s.imgLoad[i].height;
92						if(zr > 1) {
93							s.imgLoad[i].height = s.size[1];
94							s.imgLoad[i].width = s.size[1] * zr;
95						} else {
96							s.imgLoad[i].width = s.size[0];
97							s.imgLoad[i].height = s.size[0] / zr;
98							if(s.imgLoad[i].height > s.size[1]) {
99								s.imgLoad[i].height = s.size[1];
100								s.imgLoad[i].width = s.size[1] * zr;
101							}
102						}
103					}
104				}
105			}
106			if(s.imgLoaded < s.imgnum - 1) {
107				$('percent_' + s.slideId).innerHTML = (parseInt(s.imgLoad.length / s.imgnum * 100)) + '%';
108				setTimeout(function () { s.loadCheck(); }, 100);
109			} else {
110				for(i = 1;i < s.imgnum;i++) {
111					s.imgLoad[i].onclick = s.imageLink;
112					s.imgLoad[i].title = s.imgTexts[i];
113				}
114				s.showImage();
115				s.interval();
116			}
117		};
118
119		s.interval = function () {
120			clearInterval(s.st);
121			s.st = setInterval(function () { s.showImage(); }, s.slideSpeed);
122		};
123
124		s.showImage = function (i) {
125			if(!i) {
126				s.currentImg++;
127				s.currentImg = s.currentImg < s.imgnum ? s.currentImg : 1;
128			} else {
129				s.currentImg = i;
130			}
131			if(s.prevImg) {
132				$('switch_' + s.prevImg + '_' + s.slideId).style.backgroundColor = s.slideSwitchbgColor;
133			}
134			$('switch_' + s.currentImg + '_' + s.slideId).style.backgroundColor = s.slideSwitchHiColor;
135			$('slide_' + s.slideId).innerHTML = '';
136			$('slide_' + s.slideId).appendChild(s.imgLoad[s.currentImg]);
137			s.prevImg = s.currentImg;
138		};
139
140		s.loadImage();
141
142	}
143}
144
145slide();

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.