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

为什么在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);  
		}  
	});  

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