完全禁用Backbone.js哈希,但将pushState保留在历史记录中
Disable Backbone.js hashes entirely, but keep pushState in History?
我想使用Backbone出色的路由系统,但我不想为旧浏览器提供任何形式的哈希支持。在Backbone.History
中使用pushState
时,是否可以完全禁用哈希?
backbone.js页面上没有记录它,但我在带注释的源代码中找到了它。如果将hashChange
false传递给Backbone.history.start()
,主干网将不会使用哈希回退。
例如:
Backbone.history.start({hashChange:false, pushState:true})
有很多充分的理由支持pushState,而不是重新使用哈希,同时仍然支持旧的浏览器(浏览器将转到新的url并重新加载,而不是使用ajax更新)。
没有内置的支持,如果你的应用程序不能在旧浏览器中工作很重要,你可能会修改你的Backbone版本。您可以在DomReady功能的开头添加以下内容:
if (window.history && window.history.pushState) {
// main script
} else {
alert("Your browser doesn't support push state and I don't want backwards compatibility");
window.location('http://away.from.here');
}
相关文章:
- 分派点击事件并保留击键修饰符
- 如何使用jquery强制一个单词更改大小写等以保留品牌
- 提交后保留下拉选择的值
- 刷新后保留对网页的更改
- 在mvc应用程序中,在回发时保留最初隐藏的文本框的隐藏或可见状态
- Flash Uploadify在调用我的MVC控制器时没有保留会话/授权
- 当设置addFromAutocompleteOnly时,剩余文本将保留在输入字段中
- 使用递归属性迭代保留属性结构
- Jquery html() 和保留元素名称
- 如何将字符串拆分为字符,但在javascript中保留空格
- 离开页面导航后保留文本区域内容
- 如何在使用JavaScript或jQuery刷新父页面后保留iframe-src
- pushState()正在驳回'记住密码'对话
- 在页面上记录数据并实现pushstate()的最佳方式
- Javascript和RegEx:拆分并保留分隔符
- 如何生成保留标点符号的简单字谜
- 如何设置类型化对象的属性,同时保留它's类型
- 关闭谷歌地图中推荐的骑行道路,但保留专用自行车道
- 在IndexedDB中保留空间
- 完全禁用Backbone.js哈希,但将pushState保留在历史记录中