Javascript 在IE9中使用HTML5 pushState()
有没有办法在IE9中使用HTML5历史API(Javascript 在IE9中使用HTML5 pushState(),javascript,html,pushstate,Javascript,Html,Pushstate,有没有办法在IE9中使用HTML5历史API(pushState)? 如果有一个解决方案,为所有其他浏览器,这将是伟大的 回购协议报价: js在所有浏览器中都支持HTML5历史/状态API(pushState、replaceState、onPopState)。包括对数据、标题和状态的持续支持。支持jQuery、MooTools和Prototype。对于HTML5浏览器,这意味着您可以直接修改URL,而无需再使用哈希。对于HTML4浏览器,它将恢复使用旧的onhashchange功能 根据Emb
pushState
)?
如果有一个解决方案,为所有其他浏览器,这将是伟大的
回购协议报价:
js在所有浏览器中都支持HTML5历史/状态API(pushState、replaceState、onPopState)。包括对数据、标题和状态的持续支持。支持jQuery、MooTools和Prototype。对于HTML5浏览器,这意味着您可以直接修改URL,而无需再使用哈希。对于HTML4浏览器,它将恢复使用旧的onhashchange功能
根据Ember关于历史api的文档: 支持历史API的浏览器将使用HistoryLocation,不支持但仍支持hashchange事件的浏览器将使用HashLocation,在极少数情况下,两者都不支持的浏览器将使用NoneLocation
App.Router.map(function() {
this.resource('posts', function() {
this.route('new');
});
});
App.Router.reopen({
location: 'auto'
});
对于支持历史api的现代浏览器,这将导致posts.new url为/posts/new;对于较旧的浏览器,如Internet Explorer 9及以下版本,这将导致/posts/new
当用户访问到您的应用程序的链接时,他们将自动升级或降级到适当的位置类,并根据需要相应地转换URL