前言:聚集mui框架遇到的問題,遇到坑就記錄更新
1.mui報錯:$(…).append is not a function
異常信息:
Uncaught TypeError: $(...).append is not a function
at group_list?accessToken=9446C9DB5DF140E7AC6C013FD804E13E:163
at e.pt.render (laytpl.js:9)
at success (group_list?accessToken=9446C9DB5DF140E7AC6C013FD804E13E:162)
at k (mui.min.js:7)
at XMLHttpRequest.u.onreadystatechange (mui.min.js:7)
報錯位置的部分代碼
mui.init();
(function($){
//網絡請求的僞代碼
mui.ajax('[[@{/group_list}]]',{
data: {
accessToken: '[[${accessToken}]]'
},
dataType: 'json',
type: 'GET',
success: function(response){
var listTpl = document.getElementById("template_group_list").innerHTML;
laytpl(listTpl).render(response.data, function(html){
//看這裏
$("#chat_group_list").append(html);
});
},
error: function(msg){
}
});
})(mui);
原因:由於MUI框架的定位是“最接近原生體驗的移動App的UI框架”, 因此和jQuery有所區別,很少爲簡化DOM操作而封裝API,所以不存在append的dom添加方法
解決:可以使用ajax進行網絡請求,jq進行append對dom進行操作。
參考: http://ask.dcloud.net.cn/question/17837
2.爲何longtap事件無效?
原因:mui.init()中沒有配置longtap事件的開關