随机jquery移动/角度内部错误与安卓浏览器

Random jquery mobile / angular internal errors with android browser

本文关键字:错误 浏览器 内部 jquery 移动 随机      更新时间:2024-03-22

我已经使用jquery mobile、angularjs和jqm angular适配器实现了一个html5webapp。

在使用默认安卓浏览器的安卓设备上(chrome运行良好!)我在jqm文件中随机遇到错误,如"#没有方法'addClass'或'jqmEnhanceable'"。它总是可以通过多次重新加载网站来复制。

调试结果表明,在角度初始化过程中,特别是在对文档调用$compile之前,适配器在所有用data role="page"注释的div。

这导致创建了大量的jquery移动小部件,即产生了大量的"负载"。错误总是发生在.page()调用期间,但在错误发生之前处理的页数随机变化,有时它完全有效。

在我看来,浏览器似乎在某个时间点"忘记"了jquery或jquery移动方法。你们中有人提出过类似的意见吗?安卓默认浏览器是否存在已知问题?

这里也描述了这个问题。

提前感谢!!Norman

这不是一个完整的答案,但可能会帮助有类似问题的人。

我的问题是在jQuery移动弹出窗口中触摸列表元素后出现的。ng-click调用的$scope函数有两个作业:1.在$scope中设置一个值,该值是该字段的ng模型-点击该字段即可激活弹出窗口。2.关闭弹出窗口。

因此,在角度更新视图时,更新的字段位于弹出窗口后面。

解决方案是重新排序函数中的代码,以便首先调用弹出关闭,然后更新Angular模型。

这个问题发生在我的两个android测试设备中的一个上。稍旧的设备(三星平板电脑,安卓3.1,浏览器版本3.1-UEKME)有问题,较新的设备(HTC手机,安卓4.0.3,浏览器版本4.0.2213303110.348012)总是可以的-这可能是因为在以后的版本中已经消除了错误。