3

我一直在谷歌搜索几天来寻找解决问题的方法,但没有成功。所以我在这里寻求你的帮助。提前谢谢了。

该页面可以在这里看到!

标题和侧边栏在样式表中有position:fixed的值,而 left 的值是使用 jQuery 动态生成的。为了使标题和侧边栏在窗口调整大小或缩放时正确重新排列,我添加了:

/* Reload page on window Resize */
jQuery(window).bind('resize',function(){
    window.location.href = window.location.href;
});

对于窗口被部分占用的情况(例如按 [CTRL] + [B],在 Firefox 中显示书签),我添加了:

/* Reload page if window Partially Occupied */
var screen_width = screen.width;
window.onresize = function(){
  if(window_width != screen_width) {
    location.replace(location.href);
  }    
}

看看整个代码,希望你会喜欢。

问题:

在 iPad 上,当我将其方向从纵向更改为横向时,页面将不断重新加载(纵向方向一切正常)。我不认为 iPad 坏了,因为我测试了第二个。

谁能告诉我问题是什么?如果同样的情况发生在 Galaxy Tab 上?

谢谢!

4

2 回答 2

0

在调整大小时重新加载页面看起来是一种不好的做法,您可以尝试在页面调整大小时使用媒体查询来设置 CSS 更改。

要解决此问题,您可以尝试的一件事是在 iPad 上关注方向更改事件,并在客户端是 iPad 时忽略调整大小事件。

我认为您需要为此添加 JQuery Mobile (JQM)。请参阅http://jquerymobile.com/test/docs/api/events.html上的 JQM 事件

于 2012-09-11T20:34:44.893 回答
0

问题:

在 iPad 上,当我将其方向从纵向更改为横向时,页面将不断重新加载(纵向方向一切正常)。我不认为 iPad 坏了,因为我测试了第二个。谁能告诉我问题是什么?如果同样的情况发生在 Galaxy Tab 上?

答案:

$(window).bind('orientationchange', function (e) {
    switch (window.orientation) {
        case 0:
            //portrait mode
            break;
        case 90:
            //turned to the right
            location.reload();
            break;
        case -90:
            //turned to the left
            location.reload();
            break;
    }
});
于 2013-01-08T09:18:10.323 回答