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.