TOP /すぐに使えるJavaScript | 追いかけるハート |
---|
<script type="text/javascript"><!-- n=20; //ハートの数 msec=100; //追従速度 hs=3; //小さいハートの大きさ wh=10; //大きなハートの大きさ //---------------------------------------------- for(i=0;i<n;i++){ document.write("<DIV style='position:absolute;width:14px;height:14px;z_index:2;top:-100px;left:-100px;filter: Alpha(opacity=80);'ID='Hearts"+i+"'><font size='"+hs+"'color=pink>♥</font></DIV>"); } mx=new Array();my=new Array(); for (i=0; i<=n; i++) {mx[i] = -100;my[i] = -100; } function H_move(NNevent){ if(document.all){mx[0]=event.x;my[0]=event.y;}else{ mx[0]= NNevent.pageX;my[0]= NNevent.pageY;} } function H_run(){ for (i=n-1; i>=0; i--){ if(i){mx[i] = mx[i-1];my[i] = my[i-1];} if(i<(n/2)){ xh=mx[i]+wh*i*Math.cos(i*2*3.14/n+3.14/2); yh=my[i]-wh*i*Math.sin(i*2*3.14/n+3.14/2); }else{ xh=mx[i]+wh*(n-i)*Math.cos(i*2*3.14/n+3.14/2); yh=my[i]-wh*(n-i)*Math.sin(i*2*3.14/n+3.14/2); } if(document.all){ document.all["Hearts"+i].style.pixelTop = -25+yh+document.documentElement.scrollTop; document.all["Hearts"+i].style.pixelLeft = -10+xh+document.documentElement.scrollLeft; }else{ document.getElementById("Hearts"+i).style.top=-25+yh+"px"; document.getElementById("Hearts"+i).style.left=-10+xh+"px"; }} } setInterval('H_run()',msec); document.onmousemove = H_move;/* himajin.moo.jp */ // --></script>