1:MUI選擇器組件拋出“n.getSelectedItem is not a function”異常的解決辦法 2:mui三級聯動 3:移動端關閉虛擬鍵盤


1:如下圖

問題:引用了mui的地址選擇的三級聯動的應用在h5上的組件

百度發現別人思路對 Array 原型鏈方法擴充時,會拋出這個異常。

修改方法: mui.poppicker.js 第 112 行 getSelectedItems() 方法中把

改為

幾經排查發現別的同事寫到公共文件中一段對原型擴充引起的。去掉就好了。

 2:mui地址三級聯動

 

 

html:

<div class="clearfix">
       <div class="pull-left">所在地區</div>
       <div class="pull-left">
           <input type="hidden" id="city-text" class="w100per"/>
           <p id="city-picker" class="w100per districtarea">點擊地</p>
        </div>
</div>

js:

var city_picker = new mui.PopPicker({layer:3});
        city_picker.setData(cityData3);
        city_picker.pickers[0].setSelectedValue(setSelectedValue);
        var citypicker = document.getElementById("city-picker");
        citypicker.addEventListener("tap", function(){
            $("input,textarea").blur();
            setTimeout(function(){
                city_picker.show(function(items){
                    console.log(items);
                    var districttxt=(items[2] || {}).text==undefined ? "" : (items[2] || {}).text;
                    $("#city-text").val((items[0] || {}).value);//該ID為接收城市ID字段
                    $("#city-picker").html((items[0] || {}).text + " " + (items[1] || {}).text + " " + districttxt);
                });
            },200);
        });
<input type="hidden" id="city-text" class="w100per"/> 這為了存初始值。默認選中: city_picker.pickers[0].setSelectedValue(setSelectedValue);

3:移動端關閉虛擬鍵盤

套三級聯動的過程中遇到 ios中點擊地址。原有h5的虛擬鍵盤不會切換到選擇地址。而是遮擋。

方法:document.activeElement.blur();

上面的:$("input,textarea").blur();


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM