在花了 16 个小时并为各种神灵献祭过小动物之后,我必须遗憾地说我正处于精神崩溃的边缘。
我正在为 Android 编写一个 PhoneGap 2.8 应用程序(将来将移植到 iOS)。作为主要框架,我使用 jQuery(带有许多插件)、Require、Underscore 和 Backbone。在一个致命的早晨,我接到了一项任务,即我的应用程序的标题菜单必须“模仿”facebook 应用程序标题的方式(跟随滚动)。
最初我认为在标题 div 中添加“position:fixed”属性会很简单——我从来没有犯过更多错误。事实证明,position:fixed css 属性在 WebView 中无法正常工作,并且该问题已经持续多年。这个问题已经在各种论坛和文章中进行了详细讨论,并且已经提出了各种“解决方案”——在我的案例中没有一个是有效的。
我试图在滚动时将标题的位置设置为固定,在滚动完成时将其设置为绝对。理论上它是有效的,但它是滞后的。在尝试过之后,我研究了可以在这种情况下提供帮助的不同插件或框架。iScroll - 将指定的结构强制为 html 并且严重缺乏文档让我远离它。jQueryMobile - 因为它是一个完整的框架,所以将它集成到我的项目中意味着要改变很多东西。据我了解,它不会提供持久标头。
我听说过 Bartender 和 GloveBox,但它们都没有文档,而且它们也没有持续开发(最后一次提交是 > 岁)。
使用 jsHybugger 我检查了标题是否就位:修复了一个我注意到覆盖在检查器中选择的 div 的蓝色框停留在标题的单击区域所在的位置。因此,如果我滚动,标题会随着视口移动,但 hitarea 会保持原位。这让我想知道,是否有办法强制 WebView 重新计算点击区域?
非常感谢所有和任何帮助。