关于jquerymobile swipeleft swiperight多次触发的问题

     在做一个浏览照片功能的js函数时,遇到了这个问题,用jquerymobile 手势事件swipeleft 和 swiperight时会出现多次触发事件问题,代码如下:

  function a() {

      $("#abc").bind("swiperight", function(){
           alert("hello");

            //其他动作........
      });

       $("#abc").bind("swipeleft", function(){
           alert("world");

            //............
      });

   }

    这样出现了多次触发的问题,而且与你调用a函数有关,你调用第一次时,没问题,正常,但第二次时,你划一下它就动两下,第三次调用时,就三下,以此类推...所以我觉得应该是bind事件这里的问题,swipeleft/swiperight事件可以叠加bind。找到原因就好解决了。

   解决方法就是在每次调用a函数前或者说bind swipeleft/swiperight事件前unbind一下就ok了。

  function a() {

      $("#abc").unbind();//这就是关键核心

      $("#abc").bind("swiperight", function(){
           alert("hello");

            //其他动作........
      });

      $("#abc").bind("swipeleft", function(){
           alert("world");

            //............
      });

   }

你可能感兴趣的:(jquerymobile,swipeleft,swiperight,swipe多次触发问题)