JS實現圖片跟隨鼠標移動


在實現這個特效之前,需要了解JS中一個對象,event(事件對象),對,只需了解這一個對象。它的方法屬性我不多說了,想詳細了解的童鞋點擊這里

我們用到的只有這個對象的兩個屬性,clientX與clientY,就是觸發當前事件(可能是Click,也肯能是onmousemove等等事 件)時鼠標在窗口區域的X,Y坐標(它們都是只讀屬性,所以只能get,不能set),說到這里可能很多童鞋已經知道怎么做了,沒錯,就是這樣!把得到的 坐標賦值給圖片定位屬性中的Left與Top即可,很簡單吧!下面提供一個實現的小Demo.

材料:兩張你喜歡的圖片,在這里就命名為"MUp.png"與"MDown.png",為什么會有兩張圖片呢,這里還實現了一個鼠標按下變化圖片的效果。

HTML Code is Here:

1  <div id="Main">
2      <img src="MUp.png" id="Img"/>
3  </div>

 

CSS Code is Here:

1 *{ margin:0px; padding:0px;}
2 #Img{ position:absolute; top:0px; left:0px;}
3 #Main{ background-color:#F60; width:1177px; height:570px;}

 

JS Code is Here:

 1 window.onload=Main;
 2   //全局坐標變量
 3    var x="";
 4    var y="";
 5    //定位圖片位置
 6    function GetMouse(oEvent)
 7    {
 8      x=oEvent.clientX;
 9      y=oEvent.clientY;
10     document.getElementById("Img").style.left=(parseInt(x)-100)+"px";
11     document.getElementById("Img").style.top=y+"px";
12    }
13   //入口
14   function Main()
15   {
16     var ele=document.getElementById("Main");
17     //注冊鼠標移動事件
18     ele.onmousemove=function(){GetMouse(event);}
19     // 注冊鼠標按下事件
20     ele.onmousedown=function(){ChangeBg("Img","MUp.png");}
21     //注冊鼠標彈回事件
22     ele.onmouseup=function(){ChangeBg("Img","MDown.png");}
23    }
24   //圖片變化
25   function ChangeBg(id,url)
26   {
27     document.getElementById(id).src=url;
28   }

 

Effects:

很簡單吧,去試試吧。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM