mirari / v-viewer

Image viewer component for vue, supports rotation, scale, zoom and so on, based on viewer.js
https://mirari.cc/v-viewer/
MIT License
2.46k stars 292 forks source link

使用的是this.$viewerApi方法,我希望点击modal或者关闭按钮关闭viewer时,阻止点击事件冒泡,要怎么做? #303

Closed kang-int closed 9 months ago

mirari commented 9 months ago

https://codepen.io/mirari/pen/abXYxeZ

在hide回调或事件监听中拦截事件

kang-int commented 9 months ago

https://codepen.io/mirari/pen/abXYxeZ

在hide回调或事件监听中拦截事件

我在这个链接中试了,使用e.stopPropagation()后,并没有拦截click事件。 我遇到的具体问题是:在el-popover弹出框中点击按钮,预览图片,当关闭预览时,由于body被点击了,popper被关闭了。我希望回到popper界面,而不是关闭预览同时把popper也关闭了

mirari commented 9 months ago

例子里拦截的是viewer自己的关闭事件 popper被关闭是因为elementui的popper组件自己监听了元素外的点击事件,严格来说viewer没有义务去解决这个问题。 你需要手动获取到viewer弹窗后在body下创建的dom对象并监听click事件来阻止冒泡。可以在弹窗回调中查找.viewer-container元素

kang-int commented 9 months ago

例子里拦截的是viewer自己的关闭事件 popper被关闭是因为elementui的popper组件自己监听了元素外的点击事件,严格来说viewer没有义务去解决这个问题。 你需要手动获取到viewer弹窗后在body下创建的dom对象并监听click事件来阻止冒泡。可以在弹窗回调中查找.viewer-container元素

好的,谢谢了