风云考试网's Archiver

牟晓东 发表于 2006-9-6 15:52

三色鼠标

  要完成此效果把如下代码加入到<head>区域中

<script language="JavaScript">
var a_Colour=&#39;ff0000&#39;;
var b_Colour=&#39;00ff00&#39;;
var c_Colour=&#39;0000ff&#39;;
var Size=50;

var YDummy=new Array(),XDummy=new Array(),xpos=0,ypos=0,ThisStep=0;step=0.03;
if (document.layers){
window.captureEvents(Event.MOUSEMOVE);
function nsMouse(evnt){
xpos = window.pageYOffset+evnt.pageX+6;
ypos = window.pageYOffset+evnt.pageY+16;
}
window.onMouseMove = nsMouse;
}
else if (document.all)
{
function ieMouse(){
xpos = document.body.scrollLeft+event.x+6;
ypos = document.body.scrollTop+event.y+16;
}
document.onmousemove = ieMouse;
}

function swirl(){
for (i = 0; i < 3; i++)
{
  YDummy[i]=ypos+Size*Math.cos(ThisStep+i*2)*Math.sin((ThisStep)*6);
  XDummy[i]=xpos+Size*Math.sin(ThisStep+i*2)*Math.sin((ThisStep)*6);
}
ThisStep+=step;
setTimeout(&#39;swirl()&#39;,10);
}

var amount=10;
if (document.layers){
for (i = 0; i < amount; i++)
{
document.write(&#39;<layer name=nsa&#39;+i+&#39; top=0 left=0 width=&#39;+i/2+&#39; height=&#39;+i/2+&#39; bgcolor=&#39;+a_Colour+&#39;></layer>&#39;);
document.write(&#39;<layer name=nsb&#39;+i+&#39; top=0 left=0 width=&#39;+i/2+&#39; height=&#39;+i/2+&#39; bgcolor=&#39;+b_Colour+&#39;></layer>&#39;);
document.write(&#39;<layer name=nsc&#39;+i+&#39; top=0 left=0 width=&#39;+i/2+&#39; height=&#39;+i/2+&#39; bgcolor=&#39;+c_Colour+&#39;></layer>&#39;);
}
}
else if (document.all){
document.write(&#39;<div id="ODiv" style="position:absolute;top:0px;left:0px">&#39;
+&#39;<div id="IDiv" style="position:relative">&#39;);
for (i = 0; i < amount; i++)
{
document.write(&#39;<div id=x style="position:absolute;top:0px;left:0px;width:&#39;+i/2+&#39;;height:&#39;+i/2+&#39;;background:&#39;+a_Colour+&#39;;font-size:&#39;+i/2+&#39;"></div>&#39;);
document.write(&#39;<div id=y style="position:absolute;top:0px;left:0px;width:&#39;+i/2+&#39;;height:&#39;+i/2+&#39;;background:&#39;+b_Colour+&#39;;font-size:&#39;+i/2+&#39;"></div>&#39;);
document.write(&#39;<div id=z style="position:absolute;top:0px;left:0px;width:&#39;+i/2+&#39;;height:&#39;+i/2+&#39;;background:&#39;+c_Colour+&#39;;font-size:&#39;+i/2+&#39;"></div>&#39;);
}
document.write(&#39;</div></div>&#39;);
}
function prepos(){
var ntscp=document.layers;
var msie=document.all;
if (document.layers){
for (i = 0; i < amount; i++)
{
if (i < amount-1)
{
ntscp[&#39;nsa&#39;+i].top=ntscp[&#39;nsa&#39;+(i+1)].top;ntscp[&#39;nsa&#39;+i].left=ntscp[&#39;nsa&#39;+(i+1)].left;
ntscp[&#39;nsb&#39;+i].top=ntscp[&#39;nsb&#39;+(i+1)].top;ntscp[&#39;nsb&#39;+i].left=ntscp[&#39;nsb&#39;+(i+1)].left;
ntscp[&#39;nsc&#39;+i].top=ntscp[&#39;nsc&#39;+(i+1)].top;ntscp[&#39;nsc&#39;+i].left=ntscp[&#39;nsc&#39;+(i+1)].left;
}
else  
{
ntscp[&#39;nsa&#39;+i].top=YDummy[0];ntscp[&#39;nsa&#39;+i].left=XDummy[0];
ntscp[&#39;nsb&#39;+i].top=YDummy[1];ntscp[&#39;nsb&#39;+i].left=XDummy[1];
ntscp[&#39;nsc&#39;+i].top=YDummy[2];ntscp[&#39;nsc&#39;+i].left=XDummy[2];
}
}
}
else if (document.all){
for (i = 0; i <  amount; i++)
{
if (i < amount-1)
{
msie.x[i].style.top=msie.x[i+1].style.top;msie.x[i].style.left=msie.x[i+1].style.left;
msie.y[i].style.top=msie.y[i+1].style.top;msie.y[i].style.left=msie.y[i+1].style.left;
msie.z[i].style.top=msie.z[i+1].style.top;msie.z[i].style.left=msie.z[i+1].style.left;
}
else
{
msie.x[i].style.top=YDummy[0];msie.x[i].style.left=XDummy[0];
msie.y[i].style.top=YDummy[1];msie.y[i].style.left=XDummy[1];
msie.z[i].style.top=YDummy[2];msie.z[i].style.left=XDummy[2];
}
}
}
setTimeout("prepos()",10);
}
function Start(){
swirl(),prepos()
}
window.onload=Start;
</script>

页: [1]
baidu
互联网 www.ymxd.net

Powered by Discuz! Archiver 7.0.0  © 2001-2009 Comsenz Inc.