目录

手机端长按事件

禁止长按弹出菜单 


手机端长按事件

先给两个事件

      @touchstart="start"
      @touchend="end"

 因为vue里的touchend没有封装,所以需要我们自己去写

方法如下:

    start() {
      clearTimeout(this.loop); //再次清空定时器,防止重复注册定时器
      this.loop = setTimeout(() => {
        console.log("长按了");
      }, 1000);
    },

    end() {
      clearTimeout(this.loop); //清空定时器,防止重复注册定时器
    },

 之后发现长按后出现弹出菜单的现象,所以这里要解决一下如何去禁用弹出的菜单

禁止长按弹出菜单 

找到对应需要禁用菜单的页面 

* {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
    document.oncontextmenu = function (e) {
      e.preventDefault();
    };

如果是想要停止冒泡,对需要停止冒泡的元素使用onclick.stop即可

Logo

前往低代码交流专区

更多推荐