2011-07-14 59 views
4

如何檢測用戶是否點擊同一個div?如何查看您是否兩次點擊相同的元素? jquery

我已經試過這沒有成功:

_oldthis = null; 

    var _this = $(this); 

    if(_oldthis == _this) { 
     alert('You clicked this last'); 
    } 

    _oldthis = _this; 
+0

不得不聲明_oldthis – GustyWind

+0

我認爲你需要提供一些更多的背景...做奧尤需要存儲點擊的歷史和比較反對它的地方?如果是這樣,爲什麼?另外,如果你可以psot完整的點擊處理程序,而不是jsut其代碼的摘錄將是有用的:-) – prodigitalson

+0

icktoofay的得到它! – TaylorMac

回答

13

你不能比較jQuery的對象,但你可以比較它們包含的DOM對象。試試這個:

var previousTarget=null; 
$("a").click(function() { 
    if(this===previousTarget) { 
     alert("You've clicked this element twice."); 
    } 
    previousTarget=this; 
    return false; 
}); 
+0

很高興知道!謝謝 – TaylorMac

+0

它會讓我接受 – TaylorMac

+0

請注意,使用「this」而不是「$(this)」很重要 – hovado

1

你可以試試這個,

var _oldthis = null; 
$('div').click(function(){ 
    var _this = $(this); 

    if(_this == _oldthis) { 
    alert('You clicked this last'); 
    _oldthis = null; 
    return false; 
    } 
    _oldthis = _this; 

});

0
var clickHandler; 
$('a').click(function(){ 
    if(clickHandler) { 
     clickHandler = alert('click twice'); 
    } else { 
     clickHandler = alert('click once'); 
    } 
}); 
相關問題