How to see if you're clicking the same element

2019-02-18 04:16发布

问题:

How can you detect if the user is clicking the same div?

I've tried this with no success:

    _oldthis = null;

    var _this = $(this);

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

    _oldthis = _this;

回答1:

You can't compare jQuery objects, but you can compare the DOM objects they contain. Try this:

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


回答2:

You may try this,

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

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

});



回答3:

var clickHandler;
$('a').click(function(){
    if(clickHandler) {
        clickHandler = alert('click twice');
    } else {
        clickHandler = alert('click once');
    }
});