让 HTML5 MP3 播放器在页面加载过程中持续存在
Having an HTML5 MP3 player persist across page loads
所以我一直在对实现播放器(或任何元素)在这样的页面加载中持续存在的不同方法进行一些研究,似乎有两种选择。我将创建我的站点来利用 AJAX 负载:
-
哈希爆炸 - 这似乎在网络上有很多仇恨,但截至目前应该在所有浏览器中都可以使用。它似乎也很容易实现。
-
HTML5历史 - 从我所读到的内容来看,这是执行此操作的"正确"方法,但是,此时它的浏览器支持非常有限。对于不支持的浏览器,将进行整页刷新(历史记录.js)。
所以我的问题是:有第三种选择吗?或者有人可以权衡上述两个吗?看起来HTML5历史记录"更好",但是如果我需要该网站在所有浏览器中正常工作,那么Hash bang是我唯一的选择。这是真的吗?
使用历史和 onpopstate 作为第一个选项,但当失败时,设置哈希爆炸。 然后,确保您的路由可以处理哈希爆炸和漂亮的 onpopstate URL,以便用户可以关注任一书签。
我自己也用过一次这个配置,而且它不是很多JavaScript。 把一切都做好很烦人,但这是可行的,值得努力在所有浏览器中提供最佳体验。
如果有更好的解决方案,我很想听听对此的第二意见。
相关文章:
- 如何使该数据在所有元素中加载
- 使用javascript在Flash中加载外部图像
- HTML5在画布中加载较小的图像并保存实际大小的图像
- 如何在运行时在angular 2中加载外部js脚本
- 在IE中加载Firebug Lite时出现问题
- 有没有办法在tinymceiframe中加载一个外部javascript文件
- 未能在Laravel中加载资源
- Android在webview中加载带有javascript的html文件,得到Uncaught ReferenceEr
- 什么更好?使用iframe或jQuery之类的东西在外部网站中加载HTML文件
- 如何在WordPress的头中加载自定义jQuery
- 无法在obj+mtl文件中加载纹理
- 当库在页脚中加载时,基于PHP条件调用Javascript
- 点击href在谷歌地图中加载位置
- Sails.js:我可以将一些服务/模型打包为npm并在Sails.jss应用程序中加载npm吗
- 在以前的文件夹中加载脚本
- 在Javascript中加载JSON文件
- 在iframe中加载url并添加一个类
- 如何在ThreeJs中加载引用的COLLADA文件
- 在ES6中加载SASS变量
- 在foreach中加载所有项后,Knockoutjs组件回调