2010-10-10 49 views
1

我有一個980像素寬的div元素,如果鼠標位於div的最後100像素左右(我想滑動它),我希望能夠觸發事件。我已經知道如何滑動它,但是我一直無法做出告訴我什麼時候鼠標位於第一個100像素的位置,所以它可以向左滾動或在880之後滾動,因此可以向右滾動。這是我的標記:如何找出鼠標是否在使用jQuery元素的某個部分?

<div class="menuProductosNav"> 
    <ul> 
     <li><a href="computadoras.html"><img src="assets/img/menuProductos/producto0.png" alt="" /></a></li> 
     <li><a href="consumibles.html"><img src="assets/img/menuProductos/producto11.png" alt="" /></a></li> 
     <li><a href="impresoras.html"><img src="assets/img/menuProductos/producto2.png" alt="" /></a></li> 
     <li><a href="apple.html"><img src="assets/img/menuProductos/producto1.png" alt="" /></a></li> 
     <li><a href="productos.html"><img src="assets/img/menuProductos/producto3.png" alt="" /></a></li> 
     <li><a href="redescomu.html"><img src="assets/img/menuProductos/producto4.png" alt="" /></a></li> 
     <li><a href="proyecciones.html"><img src="assets/img/menuProductos/producto5.png" alt="" /></a></li> 
     <li><a href="accesorios.html"><img src="assets/img/menuProductos/producto6.png" alt="" /></a></li> 
     <li><a href="energia.html"><img src="assets/img/menuProductos/producto7.png" alt="" /></a></li> 
     <li><a href="refacciones.html"><img src="assets/img/menuProductos/producto8.png" alt="" /></a></li> 
     <li><a href="software.html"><img src="assets/img/menuProductos/producto9.png" alt="" /></a></li> 
     <li><a href="pdv.html"><img src="assets/img/menuProductos/producto10.png" alt="" /></a></li> 
    </ul> 
</div> 

我真的迷失在此,誰能讓我知道如何做到這一點?所有我能得到的是元素的寬度:

var $nav = $('.menuProductosNav'); 
$nav.bind('mouseover',function(){ 
alert($nav.width()); 
}); 

回答

4

試試這個:

var $nav = $('.menuProductosNav'); 
var nav_width = $nav.width(); 
var THRESHOLD = 100; 
$nav.bind('mouseover mousemove',function(e) { 
    var offset = nav_width - (e.clientX - this.offsetLeft); 
    console.log(offset); 
    if(offset < THRESHOLD) { 
     //mouse is within bounds... 
     alert('within bounds'); 
    } 
});​ 

工作例如:http://jsfiddle.net/XBnjJ/3/

0

也許你可以試着將一個元素在這方面,絕對定位,並就檢測鼠標懸停。當然,元素將是一個透明的div或類似的東西。

另一種解決方案是使用jQuery來檢測鼠標位置,並將其與div位置進行比較並觸發幻燈片。但是這會有點棘手。

這將是非常有益的,如果你會在某個地方的演示...

相關問題