问题:
<label for="flag1"><input type="radio" name="flag" id="flag1" value="1" /><i class="fa fa-circle-o"></i> <img src="flag1.png" /></label>
<label for="flag2"><input type="radio" name="flag" id="flag2" value="2" /><i class="fa fa-circle-o"></i> <img src="flag2.png" /></label>
<label for="flag3"><input type="radio" name="flag" id="flag3" value="3" /><i class="fa fa-circle-o"></i> <img src="flag3.png" /></label>
点第三个的时候第一个会选中,非要精确点input那个点才能选择
解决办法:
我发现是mui的js影响到的,具体是怎么影响的还不清楚,因为我把页面的mui.js去掉了就正常了,加上就出现异常
找到问题所在了,我在mui.js v2.8.0 第920行左右找到以下代码
var handle = function(event, target) {
if (target.tagName === 'LABEL') {
if (target.parentNode) {
//问题就出在这一行
target = target.parentNode.querySelector('input');
}
}
if (target && (target.type === 'radio' || target.type === 'checkbox')) {
if (!target.disabled) { //disabled
return target;
}
}
return false;
};
可以在引入mui之前加上以下代码解决
<script>window.FastClick = true;</script>