怎样制作网页中的字跟着鼠标走呀???
发布网友
发布时间:2022-04-25 12:55
我来回答
共4个回答
热心网友
时间:2022-05-18 09:32
*让字跟着鼠标走源代码:(把下面的代码插入到body区域中)
<script
language="JavaScript">
<!--
/******
Things
you
can
change
*****/
msg="梦幻岛";
msgSize=4;//1-7
FoNt='Arial';
CoLoR='#CC99FF';
speed=2;
/******
Things
you
shouldn't
change
*****/
ns=(document.layers)?1:0;
msg=msg.split(''),amount=msg.length,Y=0,X=0,ypos=0,xpos=0,ybase=new
Array(),xbase=new
Array();
angle
=
new
Array(),divTop=
new
Array(),divLeft=new
Array();
DocHeight=(document.layers)?window.innerHeight:window.document.body.
offsetHeight
;
DocWidth=(document.layers)?window.innerWidth:window.document.body.offsetWidth;
//initial
layer
placement!
for
(i=0;
i
<
amount;
i++){
divTop[i]=Math.round(Math.random()*DocHeight);
divLeft[i]=Math.round(Math.random()*DocWidth);
}
if
(ns){
for
(i
=
0;
i
<
amount;
i++)
{document.write('<layer
name=nsd'+i+'
top=0
left=0
width='+msgSize+'
height='+msgSize+'><font
face='+FoNt+'
size='+msgSize+'
color='+CoLoR+'>'+msg[i]+'</font></layer>');}
window.captureEvents(Event.MOUSEMOVE);
function
nsMouse(evnt){
ypos
=
evnt.pageY-20;
xpos
=
evnt.pageX-10;
}
window.on
MouseMove
=
nsMouse;
}
else{
document.write('<div
id="hldr"
style="position:absolute;top:0px;left:0px">')
document.write('<div
style="position:relative">')
for
(i=0;
i
<
amount;
i++)
{document.write('<div
id=ied
style="position:absolute;top:0px;left:0px;width:'+msgSize+';height:'+msgSize+'"><font
face='+FoNt+'
size='+msgSize+'
color='+CoLoR+'>'+msg[i]+'</font></div>')}
document.write('</div></div>')
function
ieMouse(){
ypos
=
event.y-20;
xpos
=
event.x-10;
}
document.
onmousemove
=
ieMouse;
}
function
GoToMouse(){
var
DocHeight=(document.layers)?window.innerHeight:window.document.body.offsetHeight;
var
DocWidth=(document.layers)?window.innerWidth:window.document.body.offsetWidth;
var
iscrll=(document.all)?document.body.scrollTop:0;
var
nscrll=(document.layers)?window.pageYOffset:0;
if
(!ns)hldr.style.top=iscrll;
for
(i=0;
i
<
amount;
i++){
Y
=
ypos
-
divTop[i];
X
=
xpos
-
divLeft[i];
angle[i]
=
Math.round(Math.atan2(Y,X)
*
180/Math.PI);
if
(angle[i]
<
0)
angle[i]
+=
360;
ybase[i]=Math.round(Math.random()*DocHeight);
xbase[i]=Math.round(Math.random()*DocWidth);
rep=Math.round(Math.random()
*
3);
extra=Math.round(Math.random()
*
200)
if
(rep
==
3)xbase[i]
=-extra;
if
(rep
==
2)xbase[i]
=DocWidth+extra;
if
(rep
==
1)ybase[i]
=-extra;
if
(rep
==
0)ybase[i]
=DocHeight;
y
=
Math.round(speed*Math.sin(angle[i]*Math.PI/180));
x
=
Math.round(speed*Math.cos(angle[i]*Math.PI/180));
divTop[i]+=y;
divLeft[i]+=x;
if
((divLeft[i]
>
xpos-speed)
&&
(divLeft[i]
<
xpos+speed/1.5)
&&
(divTop[i]
>=
ypos-speed/1.5)
&&
(divTop[i]
<=
ypos+speed/1.5))
{divTop[i]=ybase[i]+nscrll;divLeft[i]=xbase[i]}
var
layer=(document.layers)?document.layers['nsd'+i]:ied[i].style;
layer.top=divTop[i];layer.left=divLeft[i];
}
S=setTimeout('GoToMouse()',10);
}
window.onload=GoToMouse;
//-->
</script>
热心网友
时间:2022-05-18 10:50
使用脚本语言实现。。。
热心网友
时间:2022-05-18 12:24
javascript
热心网友
时间:2022-05-18 14:16
*让字跟着鼠标走源代码:(把下面的代码插入到body区域中)
<script language="JavaScript">
<!--
/****** Things you can change *****/
msg="梦幻岛";
msgSize=4;//1-7
FoNt='Arial';
CoLoR='#CC99FF';
speed=2;
/****** Things you shouldn't change *****/
ns=(document.layers)?1:0;
msg=msg.split(''),amount=msg.length,Y=0,X=0,ypos=0,xpos=0,ybase=new Array(),xbase=new Array();
angle = new Array(),divTop= new Array(),divLeft=new Array();
DocHeight=(document.layers)?window.innerHeight:window.document.body.offsetHeight;
DocWidth=(document.layers)?window.innerWidth:window.document.body.offsetWidth;
//initial layer placement!
for (i=0; i < amount; i++){
divTop[i]=Math.round(Math.random()*DocHeight);
divLeft[i]=Math.round(Math.random()*DocWidth);
}
if (ns){
for (i = 0; i < amount; i++)
{document.write('<layer name=nsd'+i+' top=0 left=0 width='+msgSize+' height='+msgSize+'><font face='+FoNt+' size='+msgSize+' color='+CoLoR+'>'+msg[i]+'</font></layer>');}
window.captureEvents(Event.MOUSEMOVE);
function nsMouse(evnt){
ypos = evnt.pageY-20;
xpos = evnt.pageX-10;
}
window.onMouseMove = nsMouse;
}
else{
document.write('<div id="hldr" style="position:absolute;top:0px;left:0px">')
document.write('<div style="position:relative">')
for (i=0; i < amount; i++)
{document.write('<div id=ied style="position:absolute;top:0px;left:0px;width:'+msgSize+';height:'+msgSize+'"><font face='+FoNt+' size='+msgSize+' color='+CoLoR+'>'+msg[i]+'</font></div>')}
document.write('</div></div>')
function ieMouse(){
ypos = event.y-20;
xpos = event.x-10;
}
document.onmousemove = ieMouse;
}
function GoToMouse(){
var DocHeight=(document.layers)?window.innerHeight:window.document.body.offsetHeight;
var DocWidth=(document.layers)?window.innerWidth:window.document.body.offsetWidth;
var iscrll=(document.all)?document.body.scrollTop:0;
var nscrll=(document.layers)?window.pageYOffset:0;
if (!ns)hldr.style.top=iscrll;
for (i=0; i < amount; i++){
Y = ypos - divTop[i];
X = xpos - divLeft[i];
angle[i] = Math.round(Math.atan2(Y,X) * 180/Math.PI);
if (angle[i] < 0) angle[i] += 360;
ybase[i]=Math.round(Math.random()*DocHeight);
xbase[i]=Math.round(Math.random()*DocWidth);
rep=Math.round(Math.random() * 3);
extra=Math.round(Math.random() * 200)
if (rep == 3)xbase[i] =-extra;
if (rep == 2)xbase[i] =DocWidth+extra;
if (rep == 1)ybase[i] =-extra;
if (rep == 0)ybase[i] =DocHeight;
y = Math.round(speed*Math.sin(angle[i]*Math.PI/180));
x = Math.round(speed*Math.cos(angle[i]*Math.PI/180));
divTop[i]+=y;
divLeft[i]+=x;
if ((divLeft[i] > xpos-speed) && (divLeft[i] < xpos+speed/1.5) && (divTop[i] >= ypos-speed/1.5) && (divTop[i] <= ypos+speed/1.5))
{divTop[i]=ybase[i]+nscrll;divLeft[i]=xbase[i]}
var layer=(document.layers)?document.layers['nsd'+i]:ied[i].style;
layer.top=divTop[i];layer.left=divLeft[i];
}
S=setTimeout('GoToMouse()',10);
}
window.onload=GoToMouse;
//-->
</script>