官方提供的 mui(contanier).progressbar().hide(); 並未起作用,DOM是js動態添加的,結果無法隱藏。(越使用,mui 的坑越多,陸續記錄中...)
后使用下面的方法,將進度條隱藏了。原理是去掉由 mui-progressbar 類而生成的進度條樣式。
var isProgress = $("#progressBar").hasClass("mui-progressbar");
if(isProgress) {
$("#progressBar").removeClass("mui-progressbar")
}
修正上述所說:
上面所說方法也可以隱藏進度條,但官方提供的 hide() 方法,也是可以的。但需要注意,所說的動態,非動態將 DOM 結構用 JS 添加,例如:
$("#progressBar").append("<div class='mui-progressbar'><span></span></div>");
我一開始便是如此理解“動態創建”,於是就無法直接使用 mui("#progressBar").progressbar().hide(); 進行隱藏。
之后查看官方demo (地址:http://www.dcloud.io/hellomui/examples/progressbar.html),使用下文代碼,即可正常使用 mui("#progressBar").progressbar().hide(); 隱藏了。
let proVal = 0;//用來模擬進度的數值
document.getElementById("progressBtn").addEventListener("tap", function() {
mui("#progressBar").progressbar({
progress: proVal
}).show();
}, false);
setInterval(function() {
proVal += 4;
setProgress()
if(proVal > 100) {
//disposeProgress()
mui("#progressBar").progressbar().hide();
proVal = 0;
}
}, 500);
function setProgress() {
mui("#progressBar").progressbar().setProgress(proVal)
}
源網址:https://segmentfault.com/a/1190000011129041
