我有一個JQM應用程序,並且我正在合併Backbone。 由於我的初始JavaScript代碼是巨大的,我只提取我認爲是有問題的。 我下面的建議,並呼籲在這裏引用步驟:從http://coenraets.org/blog/2012/03/using-backbone-js-with-jquery-mobile/
我有一個大問題,這是行爲
- JQM-config.js,問題就來了從這個代碼:
var r = Backbone.Router.extend router: ... "page": "pageDisplay" ... pageDisplay: function(){ c = new AView(); // Backbone.View ...fetch() data... $(c.el).page(); // Call to JQM to add its extra stuff; seems done correctly $.mobile.changePage("#" + c.id, {changeHash: false}); // line 50 }
當按照
<a href="#page" >
的鏈接,我如預期正確處理 頁面「#page」。但一旦發生,如果我點擊一個refresh
,這是間接地由同一路由器的規則重新處理,我結束了以下錯誤:Uncaught TypeError: Cannot call method 'trigger' of undefined
我下載了jQuery Mobile的開發代碼,並觀察到這一點:
// JQM1.1.2 - Line #3772 Show a specific page in the page container.
$.mobile.changePage = function(toPage, options) { if (isPageTransitioning) { pageTransitionQueue.unshift(arguments); return; } var settings = $.extend({}, $.mobile.changePage.defaults, options); // Make sure we have a pageContainer to work with. settings.pageContainer = settings.pageContainer || $.mobile.pageContainer; // Make sure we have a fromPage. settings.fromPage = settings.fromPage || $.mobile.activePage; // Line #3788 var mpc = settings.pageContainer, // Line #3789 pbcEvent = new $.Event("pagebeforechange"), triggerData = { toPage: toPage, options: settings }; // Let listeners know we're about to change the current page. mpc.trigger(pbcEvent, triggerData); // Line #3794
Uncaught TypeError
由行#3794引起,因爲mpc
是undefined
。 因此,從JQM,在Chrome檢查員中,我還可以看到settings.fromPage
是undefined
和settings.pageContainer
是undefined
。我想象一下,JQM無法對fromPage進行假設,因此無法繼續刷新。我在$ mobile.changePage()上嘗試過的所有選項都沒有成功。我沒有想法。UPDATE /網上用最小的現場重現該問題: apartindex,access the website with the bug
任何幫助將不勝感激。
這似乎是關於如何啓動一個頁面的骨幹網頁和jquery移動頁面刷新... –
不知道...是否有可能獲得一個鏈接到現場項目? –
我應該能夠刪除大量的東西,並把它放在網上,明天之前,請繼續關注。 –