繁体   English   中英

使用新的HTML5历史记录功能构建一个没有页面重新加载的网站

[英]Building a website without page reload, using new HTML5 history mechanics

我一直在寻找一种方法来更改浏览器地址位置,而不会导致整页重新加载,因此我得到了一些有用的信息,如下所示:

http://spoiledmilk.com/blog/html5-changing-the-browser-url-without-refreshing-page/

并试图进入新的HTML5历史机制我也得到了这个:

HTML5 / jQuery:pushState和popState - 深层链接?

所以想到一个完全不同的想法......

我问是否有可能的方式(我不一定意味着“简单”)构建,或者如果已经存在类似“框架”或类似的东西,构建一个能够完全避免页面的Web项目重新加载....因此大量使用ajax和/或jquery等(我引用这个因为它是我通常使用的)。

我认为这可以在浏览此类网站时改善“用户体验”。

“bbUI工具包旨在根据BB5 / BB6 / BB7 / PlayBook和BlackBerry 10上的Web渲染引擎的功能逐步增强其功能。[...]通过不向屏幕元素添加任何类型的布局逻辑,然后,bbUI可以以任何需要的方式修改DOM,以实现所需的结果。

当HTML片段未附加到实时DOM时,会发生所有DOM操作。 这允许DOM操作非常,非常,快速地发生,并且在将整个片段插入DOM之前不会产生任何WebView布局计算。 JavaScript DOM操作期间的布局计算是可以减慢基于Web的UI的最昂贵的操作之一。

您创建的每个屏幕都是一个HTML片段,它通过AJAX加载到应用程序中,以保持DOM的大小和内存使用量最小化。

https://github.com/blackberry/bbUI.js

GitHub是这样构建的。 当您在项目中并单击链接(如“bin”)时,它会加载与该链接对应的新内容并更新地址栏URL,但页面本身不会重新加载。

只需查看http://backbonejs.org/它应该有助于您的客户端绑定和浏览器历史记录。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM