当你学会了css3 html5 以及移动端的JS框架。你就不屑去用qjm了。jqm优点是兼容性强。弱点就是速度太慢冗余代码太多一个项目哪需要那么多功能。现在很多框架实现选择性的组合生成一个真正适用于自己的版本 如 zepto.js 和jqmobi(这个不是jquerymobile哈,目前是速度最快的一 个 框架)。
我用各种js框架都试着做过app。结果jqm是最慢的一个,其他的也达不到理想的速度。后面决定自己写js和css。结果就是ios app打开速度由JQM的6秒左右提升为0.8秒的秒开。
原理:jqm先遍历dom元素,对每个绑定data-xxxx的属性进行事件绑定,里面有句代码是这样写的
1
2
3
|
b.getAttribute&&(d=b.getAttribute(
"data-"
+a.mobile.ns+c);
------------------------------------------
tapToggleBlacklist:
"a, button, input, select, textarea, .ui-header-fixed, .ui-footer-fixed, .ui-flipswitch, .ui-popup, .ui-panel, .ui-panel-dismiss-open"
,hideDuringFocus:
"input, textarea, select"
|
对于不同的role对应不同的规则 而这些role存在于上述的一个list里。