1// modified for TruckStopsAndServices.com ... Do NOT Copy! 2var infiniteScroll = new Class({ 3 Implements: [Options], 4 5 options: { 6 'backdiv': '', 7 'forwarddiv': '', 8 'scrollholder': '', 9 'scrolls_selector': '', 10 'size': 960, 11 'leftortop': 'left', 12 'fade': true, 13 'fadeamt': 0.3, 14 'transition': 'sine:in:out', //linear, quad, cubic, quart, quint, pow, expo, circ, sine, back, bounce, elastic 15 'transitiontime': 750, 16 'watitime': 2000 17 }, 18 'classtimer':null, 19 'ismoving': false, 20 'count': 0, 21 initialize: function(options) { 22 this.setOptions(options); 23 if(this.options.backdiv){ 24 this.count = $$(this.options.scrolls_selector).length; 25 if(this.count > 1){ 26 for(var i=1;i<=this.count;i++){ 27 new Element('a',{'href':'#','id':'control_'+i,'class':((i == 1) ? this.options.activeclassname : this.options.inactiveclassname),'text':' '}).inject(this.options.controlsholder); 28 } 29 this.options.backdiv.setStyle('display','block'); 30 this.options.forwarddiv.setStyle('display','block'); 31 var counter = 0; 32 $$(this.options.scrolls_selector).each(function(el){ 33 el.setStyle(this.options.leftortop,(this.options.size*counter)); 34 el.setStyle('display','block'); 35 counter++; 36 if(counter == this.count){ 37 el.clone().inject(this.options.scrollholder.getFirst(this.options.scrolls_selector),'before').setStyle(this.options.leftortop,(this.options.size*-1)); 38 } 39 },this); 40 this.options.forwarddiv.addEvent('click',this.moveforward.bind(this,1)); 41 this.options.backdiv.addEvent('click',this.movebackward.bind(this,1)); 42 } 43 } 44 else{ 45 this.count = $$(this.options.scrolls_selector).length; 46 if(this.count > 1){ 47 var counter = 0; 48 $$(this.options.scrolls_selector).each(function(el){ 49 el.setStyle(this.options.leftortop,(this.options.size*counter)); 50 el.setStyle('display','block'); 51 counter++; 52 if(counter == this.count){ 53 el.clone().inject(this.options.scrollholder.getFirst(this.options.scrolls_selector),'before').setStyle(this.options.leftortop,(this.options.size*-1)); 54 } 55 },this); 56 this.classtimer = function(ev){ 57 this.moveforward(1,false); 58 }.periodical(this.options.waittime,this); 59 } 60 } 61 62 }, 63 moveforward: function(number){ 64 if(this.ismoving == false){ 65 this.ismoving = true; 66 var x = 1; 67 var counter = 0; 68 $$(this.options.scrolls_selector).each(function(el){ 69 var newFX = new Fx.Tween(el,{ 'transition':this.options.transition,'duration':this.options.transitiontime }).start(this.options.leftortop,(el.getStyle(this.options.leftortop).toInt()-(this.options.size*number))); 70 if(this.options.fade == true && (el.getStyle(this.options.leftortop).toInt()-(this.options.size*number)) != this.options.size*2){ 71 el.fade(this.options.fadeamt); 72 (function(){ 73 el.getFirst().morph({'maxWidth':130}); 74 }).delay(100); 75 } 76 else if(this.options.fade == true){ 77 el.fade('in'); 78 (function(){ 79 el.getFirst().morph({'maxWidth':180}); 80 }).delay(100); 81 } 82 newFX.addEvent('complete',function(){ 83 (function(){ 84 var last = 0; 85 $$(this.options.scrolls_selector).each(function(el){ 86 last = Math.max(last,el.getStyle(this.options.leftortop).toInt()); 87 if(counter == 0){ 88 el.dispose(); 89 } 90 counter++; 91 }.bind(this)); 92 (function(){ 93 if(x <= number){ 94 this.options.scrollholder.getFirst(this.options.scrolls_selector).clone().inject(this.options.scrollholder.getLast(this.options.scrolls_holder),'after').setStyle(this.options.leftortop,(last+(x*this.options.size))); 95 if(x != number){ 96 this.options.scrollholder.getFirst(this.options.scrolls_holder).dispose(); 97 } 98 } 99 x++; 100 this.ismoving = false; 101 }.bind(this)).delay(this.options.transitiontime/5*2); 102 }.bind(this)).delay(this.options.transitiontime/10); 103 }.bindWithEvent(this)); 104 },this); 105 } 106 return false; 107 }, 108 movebackward: function(number){ 109 if(this.ismoving == false){ 110 this.ismoving = true; 111 var counter = 0; 112 var first = this.options.size; 113 $$(this.options.scrolls_selector).each(function(el){ 114 first = Math.min(first,el.getStyle(this.options.leftortop).toInt()); 115 if(counter == this.count){ 116 el.dispose(); 117 } 118 counter++; 119 },this); 120 for(var x=1;x<=number;x++){ 121 this.options.scrollholder.getLast(this.options.scrolls_selector).clone().inject(this.options.scrollholder.getFirst(this.options.scrolls_selector),'before').setStyle(this.options.leftortop,(first-(this.options.size*(x)))); 122 if(x != (number)){ 123 this.options.scrollholder.getLast(this.options.scrolls_selector).dispose(); 124 } 125 } 126 $$(this.options.scrolls_selector).each(function(el){ 127 var newFX = new Fx.Tween(el,{ 'transition':this.options.transition,'duration':this.options.transitiontime }).start(this.options.leftortop,(el.getStyle(this.options.leftortop).toInt()+(this.options.size*number))); 128 if(this.options.fade == true && (el.getStyle(this.options.leftortop).toInt()+(this.options.size*number)) != 0){ 129 el.fade(this.options.fadeamt); 130 } 131 else if(this.options.fade == true){ 132 el.fade('in'); 133 } 134 newFX.addEvent('complete',function(){ 135 this.ismoving = false; 136 }.bindWithEvent(this)); 137 },this); 138 } 139 return false; 140 } 141}); 142 143var infiniteScroll2 = new Class({ 144 Implements: [Options], 145 146 options: { 147 'backdiv': '', 148 'forwarddiv': '', 149 'scrollholder': '', 150 'scrolls_selector': '', 151 'size': 313, 152 'leftortop': 'left', 153 'fade': true, 154 'fadeamt': 0.3, 155 'transition': 'sine:in:out', //linear, quad, cubic, quart, quint, pow, expo, circ, sine, back, bounce, elastic 156 'transitiontime': 750 157 }, 158 'classtimer':null, 159 'ismoving': false, 160 'count': 0, 161 initialize: function(options) { 162 this.setOptions(options); 163 if(this.options.backdiv){ 164 this.count = $$(this.options.scrolls_selector).length; 165 if(this.count > 1){ 166 for(var i=1;i<=this.count;i++){ 167 new Element('a',{'href':'#','id':'control_'+i,'class':((i == 1) ? this.options.activeclassname : this.options.inactiveclassname),'text':' '}).inject(this.options.controlsholder); 168 } 169 this.options.backdiv.setStyle('display','block'); 170 this.options.forwarddiv.setStyle('display','block'); 171 var counter = 0; 172 $$(this.options.scrolls_selector).each(function(el){ 173 el.setStyle(this.options.leftortop,(this.options.size*counter)); 174 el.setStyle('display','block'); 175 counter++; 176 if(counter == this.count){ 177 el.clone().inject(this.options.scrollholder.getFirst(this.options.scrolls_selector),'before').setStyle(this.options.leftortop,(this.options.size*-1)); 178 } 179 },this); 180 this.options.forwarddiv.addEvent('click',this.moveforward.bind(this,1)); 181 this.options.backdiv.addEvent('click',this.movebackward.bind(this,1)); 182 } 183 } 184 else{ 185 this.count = $$(this.options.scrolls_selector).length; 186 if(this.count > 1){ 187 var counter = 0; 188 $$(this.options.scrolls_selector).each(function(el){ 189 el.setStyle(this.options.leftortop,(this.options.size*counter)); 190 el.setStyle('display','block'); 191 counter++; 192 if(counter == this.count){ 193 el.clone().inject(this.options.scrollholder.getFirst(this.options.scrolls_selector),'before').setStyle(this.options.leftortop,(this.options.size*-1)); 194 } 195 },this); 196 this.classtimer = function(ev){ 197 this.moveforward(1,false); 198 }.periodical(2000,this); 199 } 200 } 201 202 }, 203 moveforward: function(number){
204 if(this.ismoving == false){ 205 this.ismoving = true; 206 var x = 1; 207 var counter = 0; 208 $$(this.options.scrolls_selector).each(function(el){ 209 var newFX = new Fx.Tween(el,{ 'transition':this.options.transition,'duration':this.options.transitiontime }).start(this.options.leftortop,(el.getStyle(this.options.leftortop).toInt()-(this.options.size*number))); 210 if(this.options.fade == true && (el.getStyle(this.options.leftortop).toInt()-(this.options.size*number)) != this.options.size*1){ 211 el.fade(this.options.fadeamt); 212 (function(){ 213 el.getFirst().morph({'maxWidth':74}); 214 }).delay(100); 215 } 216 else if(this.options.fade == true){ 217 el.fade('in'); 218 (function(){ 219 el.getFirst().morph({'maxWidth':104}); 220 }).delay(100); 221 } 222 newFX.addEvent('complete',function(){ 223 (function(){ 224 var last = 0; 225 $$(this.options.scrolls_selector).each(function(el){ 226 last = Math.max(last,el.getStyle(this.options.leftortop).toInt()); 227 if(counter == 0){ 228 el.dispose(); 229 } 230 counter++; 231 }.bind(this)); 232 (function(){ 233 if(x <= number){ 234 this.options.scrollholder.getFirst(this.options.scrolls_selector).clone().inject(this.options.scrollholder.getLast(this.options.scrolls_holder),'after').setStyle(this.options.leftortop,(last+(x*this.options.size))); 235 if(x != number){ 236 this.options.scrollholder.getFirst(this.options.scrolls_holder).dispose(); 237 } 238 } 239 x++; 240 this.ismoving = false; 241 }.bind(this)).delay(this.options.transitiontime/5*1); 242 }.bind(this)).delay(this.options.transitiontime/10); 243 }.bindWithEvent(this)); 244 },this); 245 } 246 return false; 247 }, 248 movebackward: function(number){ 249 if(this.ismoving == false){ 250 this.ismoving = true; 251 var counter = 0; 252 var first = this.options.size; 253 $$(this.options.scrolls_selector).each(function(el){ 254 first = Math.min(first,el.getStyle(this.options.leftortop).toInt()); 255 if(counter == this.count){ 256 el.dispose(); 257 } 258 counter++; 259 },this); 260 for(var x=1;x<=number;x++){ 261 this.options.scrollholder.getLast(this.options.scrolls_selector).clone().inject(this.options.scrollholder.getFirst(this.options.scrolls_selector),'before').setStyle(this.options.leftortop,(first-(this.options.size*(x)))); 262 if(x != (number)){ 263 this.options.scrollholder.getLast(this.options.scrolls_selector).dispose(); 264 } 265 } 266 $$(this.options.scrolls_selector).each(function(el){ 267 var newFX = new Fx.Tween(el,{ 'transition':this.options.transition,'duration':this.options.transitiontime }).start(this.options.leftortop,(el.getStyle(this.options.leftortop).toInt()+(this.options.size*number))); 268 if(this.options.fade == true && (el.getStyle(this.options.leftortop).toInt()+(this.options.size*number)) != 0){ 269 el.fade(this.options.fadeamt); 270 } 271 else if(this.options.fade == true){ 272 el.fade('in'); 273 } 274 newFX.addEvent('complete',function(){ 275 this.ismoving = false; 276 }.bindWithEvent(this)); 277 },this); 278 } 279 return false; 280 } 281});
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.