jQuery判斷鼠標是否在某個元素內


方法一:

以頁面header為例:

(判斷鼠標是否在一級菜單里,如果不在一級菜單,是否在二級菜單)

$('#header').mousemove(function(e){

if($.contains($("#navUl")[0],e.target) || $("#navUl")[0]==e.target){
// console.log('在menu中')
}else{
// console.log('不在menu中');
if($.contains($("#submenu")[0],e.target) || $("#submenu")[0]==e.target){
// console.log('在二級menu中')
}else{
// console.log('不在二級menu中');
$("#navUl>li").removeClass('active');
}
}

}

(參考:jquery里判斷一個標簽元素是否包含另一個標簽元素,即一個標簽元素是否為另一個標簽元素的子標簽的方法

  摘自 愛jQuery:http://www.aijquery.cn/Html/jqueryhanshu/131.html

  http://www.aijquery.cn/Html/jqueryshili/182.html

方法二: 傳統方法: Jquery獲取鼠標位置和判斷鼠標是否在DIV中

$(document).mousemove(function(e){ 
     x = e.pageX;
         y = e.pageY; 
});
 
//x的值相對於文檔的左邊緣。y的值相對於文檔的上邊緣
//x,y是全局變量;
//判斷鼠標是否在某DIV中
var div = $('.dream');//獲取你想要的DIV
var y1 = div.offset().top;  //div上面兩個的點的y值
var y2 = y1 + div.height();//div下面兩個點的y值
var x1 = div.offset().left;  //div左邊兩個的點的x值
var x2 = x1 + div.width();  //div右邊兩個點的x的值
 
if( x < x1 || x > x2 || y < y1 || y > y2){
    alert('鼠標不在該DIV中');
}else{
    alert('鼠標在該DIV中');
};

 

 

 


免責聲明!

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



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