vant/vue手机端长按事件以及禁止长按弹出菜单实现方法详解

vant/vue实现手机端长按事件

先给两个事件

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

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

方法如下:

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

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

vant/vue实现禁止长按弹出菜单

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

* {
  -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即可

以上就是vant/vue手机端长按事件以及禁止长按弹出菜单实现方法详解的详细内容,更多关于vant/vue手机端长按事件以及禁止长按弹出菜单的资料请关注其它相关文章!

原文地址:https://blog.csdn.net/nanchen_J/article/details/121849748