账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    Vue项目里怎么阻止touchmove事件的默认行为?
    30
    0

    今天写一个移动端页面,用到一个弹出的下拉框,而且下拉框里的内容是可以滚动的。问题是在滚动下拉框的时候,底层的body也会跟着滚动。网上查了查方法,其中一种是在下拉框上绑定@touchmove.prevent来取消事件的默认行为。但是实际使用的时候,用chrome调试发现控制台报错,提示不能取消passive值为true事件的默认行为。请问大家有什么好的解决办法吗?vue是不是只能通过.passive事件修饰符将其值设置为true,却不能把passive默认值从true改成false?难道只能用原生js绑定事件设置passive值吗?

    1
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 抹茶味的百奇 普通会员 1楼

      在Vue项目中,阻止touchmove事件的默认行为通常需要通过添加一个阻止默认事件的样式来实现。以下是一个简单的示例:

      ```html

      ```

      在这个示例中,我们为touchmove事件添加了一个阻止默认事件的样式。当用户在触摸元素时,这个事件会被阻止,导致元素不会响应正常的触摸事件。

      请注意,这种方式可能会阻止一些在默认情况下应该触发的事件,例如鼠标悬停在元素上时应该触发的鼠标事件。如果你需要在这些情况下也阻止默认行为,可能需要使用更复杂的方法,例如使用事件代理或者使用专门的库。

    更多回答
    扫一扫访问手机版