2
它可以使用歷史API與Ember.js,只需:Ember.js歷史與全屏API
App.Router.reopen
location: 'history'
但在全屏運行時,任何URL修改打破全屏模式瀏覽器(這是很好已知的bug https://code.google.com/p/chromium/issues/detail?id=171670)。
是否有可能在EmberJS中對歷史API更改進行排隊,並且只有在應用程序退出全屏時纔會觸發所有更改?
P.S.看起來像YouTube一樣 - 您可以全屏觀看連續多個視頻,並且只有在您退出全屏模式之前,URL纔會保持不變。
謝謝,它的工作!我已經使用自定義pushState,新屬性pathQueue和新方法fireQueue(現在是我的情況下對screenfull.raw.fullscreenchange的監聽器)擴展了Ember.HistoryLocation。之後,我已經註冊這個新的類與App.register作爲App.Router.reopen中的位置。 –
很高興工作。你能發表一些代碼示例嗎?我想有更多的Ember應用程序可以使用全屏。 –
當然,但我的解決方案非常具體(我們使用CoffeeScript和screenfull.js)和醜陋的(儘管沒有什麼比臨時更永久)。這是我添加到app.coffee - https://gist.github.com/vyahhi/9251106。 –