2016-06-25 152 views
2

我正在为每个部分构建一个使用100vh的网站。然而,在移动浏览器上,随着视口高度的增加/减少,隐藏/显示地址栏(例如在Chrome上),这会导致用户界面不佳。有什么办法来防止滚动的地址栏自动隐藏?防止移动浏览器上的地址栏自动隐藏

自由译者网站有一个解决这个问题的实现。有人可以解释这是如何完成的? https://m.freelancer.com

+0

我认为这个答案解决了它:https://stackoverflow.com/a/33953987/2464167您链接的站点也使用固定大小的元素来防止地址栏隐藏。 – argaz

回答

1

有什么办法来防止地址栏上滚动的自动隐藏?

遗憾的是,没有办法从脚HTML或代码地址栏(据我所知,至少)

“假”全屏模式:

相反,你可以考虑迫使地址栏自动隐藏在页面加载时,给一个更好的全屏体验。

显然,这只适用于第一次加载页面并向下滚动时 - 再次备份时,它会显示地址栏。

我倾向于发现,大多数移动设计的网站要求用户向下滚动很多,然后导航到另一个页面。

方法如下:

写一个简单的脚本,并在页面(S)使用它,你希望拥有的“全屏幕” - 或者,如果你有一个模板页,你的网站的其余部分使用,在那里使用脚本。

您可以使用:

<script type="text/javascript"> 
    window.onLoad = function() {   
     window.scrollTo(0,1); 
    } 
</script> 

或者,如果你正在使用jQuery:

<script type="text/javascript"> 
    $(function() { 
     $(window).scrollTo(0,1); 
    } 
</script> 

这个“技巧”的浏览器变成以为你已经滚动页面加载时,和因此会自动隐藏地址栏。 这可能不适用于某些浏览器

再次 - 这不是“防止滚动时自动隐藏地址栏”的直接答案,但这可能会增强您的用户在首次访问页面时的体验。

我用过:http://www.html5rocks.com/en/mobile/fullscreen/作为参考 - 从外观上看,还有很多其他的想法。

希望这会有所帮助! :)

UPDATE:

我做很多更多挖这个问题上,有似乎也有其他的方法,你可以强制浏览器应运而生“全屏幕”,还可以防止滚动“向上”时地址栏重新显示。

看到这里:http://www.creativebloq.com/html5/12-html5-tricks-mobile-81412803为一些(大量)的建议。

+1

为什么这被接受为答案?它回答了所问的内容。问题是如何避免隐藏(所以保持地址栏在视图中),而不是如何获得全屏/隐藏地址栏。 – musicformellons

+0

感谢您的评论@musicformellons :)我在答案的第一行没有办法知道要实现OP想要的内容。相反,我提出了一个他们可以尝试的替代方法。不知道为什么它被标记为接受 - 可能是最终OP使用什么。我有兴趣阅读是否有办法做到这一点,因为我花了一些时间研究它,但无济于事。 –

+0

只是有一个想法 - 不是在PC上,但是,所以无法测试。如果你想在“身体”上关闭溢出,但是使其高度为100vh,宽度为100vw;而是在里面放置一个'div',并将其设置为auto - 我想知道这是否可行? –

相关问题