1***@qq.com
1***@qq.com
  • 发布:2017-02-22 10:33
  • 更新:2017-02-22 14:02
  • 阅读:1545

为什么在js下面加入(mui);之后a标签不能连接了

分类:MUI
mui

mui.init();
(function($) {
$('#OA_task_1').on('tap', '.mui-btn', function(event) {
var elem = this;
var li = elem.parentNode.parentNode;
mui.confirm('确认删除该条记录?', '订单', btnArray, function(e) {
if (e.index == 0) {
li.parentNode.removeChild(li);
} else {
setTimeout(function() {
$.swipeoutClose(li);
}, 0);
}
});
});
var btnArray = ['确认', '取消'];

})(mui);

2017-02-22 10:33 负责人:无 分享
已邀请:
CJH

CJH - 我想要的,我自然会认真

因为tap事件中,添加了 e.preventDefault(); 阻止了默认标签的默认事件;

if (event === 'tap') { //TODO 需要找个更好的解决方案  
    element.addEventListener('click', function(e) {  
        if (e.target) {  
            var tagName = e.target.tagName;  
            if (!preventDefaultException.test(tagName)) {  
                if (tagName === 'A') {  
                    var href = e.target.href;  
                    if (!(href && ~href.indexOf('tel:'))) {  
                        e.preventDefault();  
                    }  
                } else {  
                    e.preventDefault();  
                }  
            }  
        }  
    });  
}  

解决方案:
方案1.使你的mui-btn和li不在同一个父容器下
方案2. tap事件绑定在a上,使其可以跳转

    //页面a标签的点击跳转事件  
    mui('.mui-table-view').on('tap', 'a', function(e) {  
        if(!this.classList.contains('mui-disabled')) {  
            mui.openWindow({  
                url: this.getAttribute('href'),  
                id: 'info'  
            });  
        } else {  
            //s e.preventDefault();  
            mui.preventDefault(e);  
            mui.stopPropagation(e);  
        }  
    });  

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