VUE 同时监听 多个事件,safari浏览器上异常

safari浏览器上,触发 contextmenu右键 同时 会触发 click事件

google浏览器 触发 contextmenu右键 同时 不会触发 click事件

li 上 同时监听( mouseout mouseover contextmenu on:click)

<li @mouseover="overShow(item.tree_id,this)" @mouseout="outHide(item.tree_id,this)" @contextmenu.prevent.stop="open_menu($index,item.tree_id,item.path,true,$event)" v-for="(item,$index) in tree_list" :class="[{'active':item.tree_id === tree_list[0].active},{'open':item.open},{'hover': item.tree_id === tree_list[0].hover && item.tree_id != tree_list[0].active},{'changed' : item.changed}]"

v-on:click.stop="select_tree(item.tree_id,item.path)" v-on:keyup.right.stop="show_menu">

    <div class="wholerow"></div><i class="icon" :class="[{'fa fa-caret-right'  : item.child.length > 0 && !item.open},{'fa fa-caret-down'  : item.child.length > 0 && item.open}]" v-on:click.stop="child_open($index,this)"></i>

 <a class="text">

                                    {{item.name}}

                                </a>

https://img.mukewang.com/5c7a200b0001c51a08000583.jpg


BIG阳
浏览 1124回答 1
1回答

暮色呼如

首先:safe浏览器上是指safari浏览器吗?我做了在线例子,表示在safari上并没有出现右击会调用click的情况&nbsp;demo建议你先做一个简单的例子,在试一下。另外事件绑定最好都用@。<div id="app">&nbsp; <button @click="onClick" @contextmenu="onContextmenu">&nbsp; &nbsp; click&nbsp; </button></div>new Vue({&nbsp; el: '#app',&nbsp; methods: {&nbsp; &nbsp; onClick () {&nbsp; &nbsp; &nbsp; console.log('onClick')&nbsp; &nbsp; },&nbsp; &nbsp; onContextmenu () {&nbsp; &nbsp; &nbsp; console.log('onContextmenu')&nbsp; &nbsp; }&nbsp; }})
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript