2011-04-03 61 views

回答

26

History.js

報價:

History.js優雅地支持所有瀏覽器的HTML5歷史/國家的API(pushState的,replaceState,onPopState)。包括對數據,標題,替換狀態的持續支持。支持jQuery,MooTools和Prototype。對於HTML5瀏覽器,這意味着您可以直接修改URL,而無需再使用散列值。對於HTML4瀏覽器,它將恢復使用舊的onhashchange功能。

-1

按照有關歷史API灰燼文件:支持歷史API將使用HistoryLocation,那些不這樣做,但仍支持hashchange事件將使用HashLocation http://emberjs.com/api/classes/Ember.Location.html

瀏覽器,並在罕見的情況下,不支持將使用NoneLocation。

App.Router.map(function() { 
    this.resource('posts', function() { 
    this.route('new'); 
    }); 
}); 

App.Router.reopen({ 
    location: 'auto' 
}); 

這將導致的posts.new URL /職位/新作支持歷史API或/#/職位/新換舊的,如Internet Explorer 9和下面的現代瀏覽器。

當用戶訪問應用程序的鏈接時,它們將自動升級或降級到相應的Location類,並根據需要轉換URL。