vant/vue手机端长按事件以及禁止长按弹出菜单实现方法详解
Nanchen_42 人气:0vant/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即可
加载全部内容