How to bind 'touchstart' and 'click' events but not respond to both?

前端 未结 30 3382
抹茶落季
抹茶落季 2020-11-22 14:08

I\'m working on a mobile web site that has to work on a variety of devices. The one\'s giving me a headache at the moment are BlackBerry.

We need to support both key

30条回答
  •  野性不改
    2020-11-22 14:37

    Just adding return false; at the end of the on("click touchstart") event function can solve this problem.

    $(this).on("click touchstart", function() {
      // Do things
      return false;
    });
    

    From the jQuery documentation on .on()

    Returning false from an event handler will automatically call event.stopPropagation() and event.preventDefault(). A false value can also be passed for the handler as a shorthand for function(){ return false; }.

提交回复
热议问题