页面更改后 jQuery Mobile 不调整大小

标签 jquery html css cordova jquery-mobile

我正在使用 jquery mobile 开发 phonegap 应用程序,之前发现了一个浏览 StackOverflow 的解决方案,该解决方案在初始页面和方向更改时运行良好。

我的问题是在从一个页面移动到另一个页面后出现的。它似乎调整了大小,但是否调整太多了,我想知道我是否可以做些什么来解决这个问题?

function contentHeight() {
'use strict';
var screen = $.mobile.getScreenHeight(),
    header = $(".ui-header").hasClass("ui-header-fixed") ? $(".ui-header").outerHeight() - 1 : $(".ui-header").outerHeight(),
    footer = $(".ui-footer").hasClass("ui-footer-fixed") ? $(".ui-footer").outerHeight() - 1 : $(".ui-footer").outerHeight(),
    contentCurrent = $(".ui-content").outerHeight() - $(".ui-content").height(),
    content = screen - header - footer - contentCurrent;

/* Apply calculation */
$(".ui-content").height(content);
}

这是我在此处某处找到的函数。

$(window).bind('load resize orientationchange', contentHeight);
$(document).ready(contentHeight);
$(document).on('throttledresize orientationchange pagecontainertransition', contentHeight);

这些是我正在连接的事件。

如前所述,当您第一次加载主要的初始网页时,它会按预期工作,但单击指向另一个网络文档的链接会在底部添加额外的 50-80 像素高度。

我将附上我正在处理的 CSS 和 2 个 HTML 文件,这样任何人都可以自己查看。

HTML File #1

HTML File #2

在此先感谢您的帮助或见解!

最佳答案

经过大量测试,我最终做的是添加:

target-densityDpi=device-dpi

到元视口(viewport)标签,然后:

data-position="fixed"
data-id="myID"
data-tap-toggle="false"

到页脚本身。这解决了所有缩放问题(即使在改变方向时),并解决了当您点击任何类型的焦点元素(例如选择菜单)时页脚会跳起来的问题。

关于页面更改后 jQuery Mobile 不调整大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37703630/

相关文章:

html - 无法使用 HTML 正确定位

javascript - d3 中带有 Contenteditable 的 ForeignObject 不适用于 chrome

javascript - 如何在相关事件发生后获取特定对象的属性?

javascript - JQuery/JavaScript 中未定义的数组

html - 表格显示和元素之间的相同空间

html - 使用 HTML 和 CSS 实现索引弹出窗口

javascript - 刷新页面后 Div 保存其颜色?

jquery - 如何在完整日历中拖动和选择时仅放置占位符

Javascript .indexOf 表示 2 个相等的元素不相等

javascript - Wheelnav js将标题与圆圈对齐