6***@qq.com
6***@qq.com
  • 发布:2019-05-06 14:57
  • 更新:2019-09-10 09:39
  • 阅读:2039

关于mui框架底部导航 a 标签跳转失败的问题

分类:MUI
mui

点击底部导航的时候的时候会有这个错误

mui.js?0540:6451 [Intervention] Unable to preventDefault inside passive event listener due to target being treated as passive. See https://www.chromestatus.com/features/5093566007214080

2019-05-06 14:57 负责人:无 分享
已邀请:
6***@qq.com

6***@qq.com (作者)

不知道是否和这个有关,,,,

1***@qq.com

1***@qq.com

直接写<a href=""></a>这种是不会有反应的(这个我不是专业的也不懂原因)。可以用js来实现跳转 ,比如监听a标签点击(click 或者 tap)事件,然后用mui框架中的 mui.openWindow({url:"xxx.html,id="xxx"});实现跳转, 或者用原生js window.location.href = "xxx.html"。

  • 6***@qq.com (作者)

    谢谢 你说的 的确是一种解决办法 但是之前使用底部选项卡的时候是没有问题的 源码里边有一段注释的代码 你们可以看下

    2019-05-06 15:27

Ling317

Ling317

修改mui.min.js,在js中查找【 f)break}}),b.addEventListener("click" 】修改后成【 f)break}},{passive: false}),b.addEventListener("click" 】就可完美解决报错的问题。
修改跳转问题
//解决 所有a标签 导航不能跳转页面
mui('body').on('tap','a',function(e){
if (!$(this).parent().hasClass('mui-collapse')&&!$(this).parents().hasClass('mui-segmented-control')) {
//这里我排除了折叠面板和tab选项卡中的a标签
if (!!this.href) {document.location.href=this.href;}
}else{
e.preventDefault()
}
});

该问题目前已经被锁定, 无法添加新回复