这段代码直接在地址栏输入可以让网页上的图片飘起来,谁能告诉我其中的原理呢?

来源:百度知道 编辑:UC知道 时间:2024/05/22 10:04:18
javascript:R=0; x1=.1; y1=.05; x2=.25; y2=.24; x3=1.6; y3=.24; x4=300; y4=200; x5=300; y5=200; DI=document.images; DIL=DI.length; function A(){for(i=0; i-DIL; i++){DIS=DI[ i ].style; DIS.position='absolute'; DIS.left=Math.sin(R*x1+i*x2+x3)*x4+x5; DIS.top=Math.cos(R*y1+i*y2+y3)*y4+y5}R++}setInterval('A()',5); void(0);

请大虾帮忙解释一下以上代码的意思,越详细越好,以及为什么它可以在地址栏里运行,以及其原理的相关的知识

在URL栏输入,javascript:
---在当前页面执行javascript

R=0;
x1=.1;
y1=.05;
x2=.25;
y2=.24;
x3=1.6;
y3=.24;
x4=300;
y4=200;
x5=300;
y5=200;
DI=document.images; //获取页面所有的 <image >
DIL=DI.length; //集合长度
function A(){
for(i=0; i-DIL; i++){//循环DIL次,当i-DIL==0时就退出循环
DIS=DI[ i ].style; //获取样式属性对象,放在DIS
DIS.position= "absolute "; //设置CSS样式,这样就脱离页面流,图片可以飞起来
DIS.left=Math.sin(R*x1+i*x2+x3)*x4+x5;//sin和cos参数一样,变量R和I在里面
DIS.top=Math.cos(R*y1+i*y2+y3)*y4+y5;//参数y4、x4被乘了个计算的系数,加上x5,y5就有个位置了。
}
R++;//让图片在下次进入循环时改变位置。
}
setInterval( "A() ",5); //真正的循环;
void(0);//相当于return false;不让它往下执行,要不就会当作网址执行了

就是因为这个是一种网页指令,它可以强制可以点击超级连接的图禁止连接,是一种防病毒从广告中侵入,不进行超级连接的工具。但是它也和对用户IP造成负面影响,尽量别用它,用多了回使此IP的一些网页不能正常运行。如果你在保护性比较强的网站用,会使那个网站封你的IP,并且还有相应的处罚!!!

在URL栏输入,javascript:
---在当前页面执行javascript

R=0;
x1=.1;
y1=.