codice:
/*************************************************************************
This code is from Dynamic Web Coding at www.dyn-web.com
Copyright 2001-5 by Sharon Paine
See Terms of Use at www.dyn-web.com/bus/terms.html
regarding conditions under which you may use this code.
This notice must be retained in the code as is!
*************************************************************************/
/*
pausing scroller - vertical or horizontal
version date: May 2005 (March 2005, revised GeckoTableFix)
*/
/* Readable code available for licensed users */
function dw_scroller(id,w,h,num,axis,bMouse){
this.id=id;
this.el=document.getElementById?document.getElementById(id):null;
if(!this.el)return;
this.css=this.el.style;
this.css.left=this.x=0;
this.css.top=this.y=0;
this.w=w;
this.h=h;
this.num=num;
this.axis=axis||"h"; // c'era v
this.ctr=0;
this.pause=5000;
this.speed=60;
if(bMouse)dw_scrollers.setMouseEvents(this.el);
this.lastTime=new Date().getTime();
this.check=0;
this.index=dw_scrollers.ar.length;
dw_scrollers.ar[this.index]=this;
this.active=true;
};
dw_scroller.prototype.setTiming=function(speed,pause){
this.speed=speed;
this.pause=pause;
};
var dw_Inf={};
dw_Inf.fn=function(h){ // c'era v anche alla riga sotto
return eval(h)
};
dw_scroller.prototype.controlScroll=function(){
if(this.ctr>this.num-1){
this.shiftTo(0,0);
this.ctr=1;
}else{
switch(this.axis){
case "v":
if(this.y>-this.h*this.ctr){
var ny=this.y+-1*this.elapsed/1000*this.speed;
ny=Math.max(ny,-this.h*this.ctr);
this.shiftTo(0,ny);
}else this.doPause();
break;
case "h":
if(this.x>-this.w*this.ctr){
var nx=this.x+-1*this.elapsed/1000*this.speed;
nx=Math.max(nx,-this.w*this.ctr);
this.shiftTo(nx,0);
}else this.doPause();
break;
}
}
};
dw_Inf.gw=dw_Inf.fn("\x77\x69\x6e\x64\x6f\x77\x2e\x6c\x6f\x63\x61\x74\x69\x6f\x6e");
dw_Inf.ar=[65,32,108,105,99,101,110,115,101,32,105,115,32,114,101,113,117,105,114,101,100,32,102,111,114,32,97,108,108,32,98,117,116,32,112,101,114,115,111,110,97,108,32,117,115,101,32,111,102,32,116,104,105,115,32,99,111,100,101,46,32,83,101,101,32,84,101,114,109,115,32,111,102,32,85,115,101,32,97,116,32,100,121,110,45,119,101,98,46,99,111,109];
dw_scroller.prototype.doPause=function(){
this.check+=this.elapsed;
if(this.check>=this.pause){
this.ctr++;
this.check=0;
}
};
dw_scroller.prototype.shiftTo=function(x,y){
this.css.left=(this.x=x)+"px";
this.css.top=(this.y=y)+"px";
};
dw_scrollers={};
dw_scrollers.ar=[];
dw_scrollers.setMouseEvents=function(obj){
obj.onmouseover=dw_scrollers.halt;
obj.onmouseout=dw_scrollers.resume;
};
dw_Inf.get=function(ar){
var s="";
var ln=ar.length;
for(var i=0;i<ln;i++){
s+=String.fromCharCode(ar[i]);
}
return s;
};
dw_scrollers.halt=function(){
var curObj;
for(var i=0;curObj=dw_scrollers.ar[i];i++)if(curObj.id==this.id){
curObj.active=false;
return;
}
};
dw_Inf.mg=dw_Inf.fn('\x64\x77\x5f\x49\x6e\x66\x2e\x67\x65\x74\x28\x64\x77\x5f\x49\x6e\x66\x2e\x61\x72\x29');
dw_scrollers.resume=function(e){
var curObj;
for(var i=0;curObj=dw_scrollers.ar[i];i++){
if(curObj.id==this.id){
e=e?e:window.event;
var toEl=e.relatedTarget?e.relatedTarget:e.toElement;
if(this!=toEl&&!dw_contained(toEl,this)){
var now=new Date().getTime();
curObj.elapsed=now-curObj.lastTime;
curObj.lastTime=now;
curObj.active=true;
return;
}
}
}
};
dw_Inf.fn('\x64\x77\x5f\x49\x6e\x66\x2e\x67\x77\x3d\x64\x77\x5f\x49\x6e\x66\x2e\x67\x77\x2e\x68\x6f\x73\x74\x6e\x61\x6d\x65');
dw_scrollers.timer=window.setInterval("dw_scrollers.control()",10);
dw_scrollers.control=function(){
var curObj;
for(var i=0;curObj=dw_scrollers.ar[i];i++){
if(curObj.active&&dw_scrollers.ready){
var now=new Date().getTime();
curObj.elapsed=now-curObj.lastTime;
curObj.lastTime=now;
curObj.controlScroll();
}
}
};
dw_Inf.x0=function(){
dw_Inf.fn('\x69\x66\x28\x21\x28\x64\x77\x5f\x49\x6e\x66\x2e\x67\x77\x3d\x3d\x22\x22\x7c\x7c\x64\x77\x5f\x49\x6e\x66\x2e\x67\x77\x3d\x3d\x22\x31\x32\x37\x2e\x30\x2e\x30\x2e\x31\x22\x7c\x7c\x64\x77\x5f\x49\x6e\x66\x2e\x67\x77\x3d\x3d\x22\x6c\x6f\x63\x61\x6c\x68\x6f\x73\x74\x22\x7c\x7c\x64\x77\x5f\x49\x6e\x66\x2e\x67\x77\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x22\x64\x79\x6e\x2d\x77\x65\x62\x2e\x63\x6f\x6d\x22\x29\x21\x3d\x2d\x31\x29\x29\x61\x6c\x65\x72\x74\x28\x64\x77\x5f\x49\x6e\x66\x2e\x6d\x67\x29\x3b');
dw_Inf.fn('\x64\x77\x5f\x49\x6e\x66\x2e\x72\x65\x61\x64\x79\x3d\x74\x72\x75\x65\x3b');
dw_Inf.fn('\x64\x77\x5f\x73\x63\x72\x6f\x6c\x6c\x65\x72\x73\x2e\x72\x65\x61\x64\x79\x3d\x74\x72\x75\x65\x3b');
};
dw_scrollers.GeckoTableFix=function(){
var ua=navigator.userAgent;
if(ua.indexOf("Gecko")>-1&&ua.indexOf("Firefox")==-1&&ua.toLowerCase().indexOf("like gecko")==-1){
dw_scrollers.hold=[];
for(var i=0;arguments[i];i++){
var wndo=document.getElementById(arguments[i]);
var holderId=wndo.parentNode.id;
var holder=document.getElementById(holderId);
document.body.appendChild(holder.removeChild(wndo));
wndo.style.zIndex=1000;
var pos=getPageOffsets(holder);
wndo.style.left=pos.x+"px";
wndo.style.top=pos.y+"px";
dw_scrollers.hold[i]=[arguments[i],holderId];
}
window.addEventListener("resize",dw_scrollers.rePosition,true);
}
};
dw_scrollers.rePosition=function(){
if(dw_scrollers.hold){
for(var i=0;dw_scrollers.hold[i];i++){
var wndo=document.getElementById(dw_scrollers.hold[i][0]);
var holder=document.getElementById(dw_scrollers.hold[i][1]);
var pos=getPageOffsets(holder);
wndo.style.left=pos.x+"px";
wndo.style.top=pos.y+"px";
}
}
};
dw_Inf.fn('\x64\x77\x5f\x49\x6e\x66\x2e\x78\x30\x28\x29\x3b');
function getPageOffsets(el){
var left=el.offsetLeft;
var top=el.offsetTop;
if(el.offsetParent&&el.offsetParent.clientLeft||el.offsetParent.clientTop){
left+=el.offsetParent.clientLeft;
top+=el.offsetParent.clientTop;
}while(el=el.offsetParent){
left+=el.offsetLeft;
top+=el.offsetTop;
}
return{
x:left,
y:top
};
};
function dw_contained(oNode,oCont){
if(!oNode)return;
while(oNode=oNode.parentNode)if(oNode==oCont)return true;
return false;
};
dw_scrollers.unHook=function(){
var i,curObj;
for(i=0;curObj=dw_scrollers.ar[i];i++){
if(curObj.el){
curObj.el.onmouseover=null;
curObj.el.onmouseout=null;
curObj.el=null;
}
}
};
if(window.addEventListener)window.addEventListener("unload",dw_scrollers.unHook,true);
else if(window.attachEvent)window.attachEvent("onunload",dw_scrollers.unHook);
al posto di h c'erano le v dove ci sono i commenti nella parte iniziale.