html - 移動端radio無法選中
問題描述
<label for='flag1'><input type='radio' name='flag' value='1' /><i class='fa fa-circle-o'></i> <img src='http://m.cgvv.com.cn/wenda/flag1.png' /></label><label for='flag2'><input type='radio' name='flag' value='2' /><i class='fa fa-circle-o'></i> <img src='http://m.cgvv.com.cn/wenda/flag2.png' /></label><label for='flag3'><input type='radio' name='flag' value='3' /><i class='fa fa-circle-o'></i> <img src='http://m.cgvv.com.cn/wenda/flag3.png' /></label>
點第三個的時候第一個會選中,非要精確點input那個點才能選擇,遇到過兩次了,就是不知道什么原因造成的
問題解答
回答1:label標簽不是這樣用的,他的開始跟閉合標簽之間不能加其他標簽。否則他的for屬性不起作用的。<label for='a'></label><input type....... />這樣就可以他會自己去找id為a的標簽
回答2:lable失效,/lable位置不對吧放在input前面試試
回答3:我發現是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) { //disabledreturn target;} } return false;};
可以在引入mui之前加上以下代碼解決
<script>window.FastClick = true;</script>
相關文章:
1. angular.js - angular ng-class里面的引號問題2. javascript - log4js的使用問題3. javascript - Web微信聊天輸入框解決方案4. docker - 如何修改運行中容器的配置5. javascript - 移動端textarea不能上下滑動,該怎么解決?6. javascript - history.replaceState()無法改變query參數7. javascript - 有沒有什么好的圖片懶加載的插件,需要包含監聽頁面滾動高度,然后再加載的功能8. css - 對于類選擇器使用的問題9. javascript - Ajax加載Json時,移動端頁面向左上角縮小一截兒,加載完成后才正常顯示,這該如何解決?10. html5 - video ios不能播放怎么辦?
