如何判斷滑鼠是否在DIV的地區內

來源:互聯網
上載者:User

如何判斷滑鼠是否在DIV的地區內

 通過mouseover,mouseout來觸發事件,才判斷滑鼠是否在該地區。 但是這種方法的局限性就是,必須要觸發mouseover,或mouseout,mouseleave事件才能知道

今天研究了一下這個問題,也普及了一下知識吧。

方法一:

通過mouseover,mouseout來觸發事件,才判斷滑鼠是否在該地區。 但是這種方法的局限性就是,必須要觸發mouseover,或mouseout,mouseleave事件才能知道。


代碼如下:

function chkIn()
    {
  div_1.innerText = "現在你把滑鼠移入層了!";
  div_1.style.font = "normal black";
 }
   function chkOut()
    {
  div_1.innerText = "現在你把滑鼠移出層了!";
  div_1.style.font = "bold red";
 }

代碼如下:

<div id="div_1" style="background-color:lightblue; width:400px; height:300px; "
       onMouseOver="chkIn()" onMouseOut="chkOut()">This is a DIV
  </div>

方法二:

代碼如下:

function   checkIn(e){
var   x=window.event.clientX;
var   y=window.event.clientY;
var   str= ' ';
for(i=0;i <document.body.children.length;i++){
            var   obj=document.body.children[i];
          if(x> obj.offsetLeft
                                  &&x <(obj.offsetLeft+obj.clientWidth)
                          &&y> obj.offsetTop
                        &&y <(obj.offsetTop+obj.clientHeight)){
                str+= ' <滑鼠位於層 '+obj.id+ '範圍之內> n ';
          }else{
                str+= ' <滑鼠位於層 '+obj.id+ '範圍之外> n ';
        }
  }
alert(str);
}
document.onclick=checkIn

方法三:

這個方法是最簡單的實用的。

代碼如下:
if(myDiv.contains(window.event.srcElement))

即 if(myDiv.contains(滑鼠位置的元素對象))

具體情況還是要根據自己需要來選擇,我是調試了一下方法三,但是具體也沒使用上。 其他方法,繼續研究中。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.