1
我試圖在使用骨幹網和JQM的項目中創建覆蓋面板。覆蓋面板應該像在JQM文檔中描述的例子:帶Backbone.js和JQuery Mobile的覆蓋面板
http://jquerymobile.com/demos/1.2.0/docs/pages/popup/popup-panels.html
我的項目,該項目是基於第一步教程骨幹和JQM,採用骨幹路由。正常的路線changePage()運作良好。我只是無法讓覆蓋面板工作。
我爲我的項目創建了一個git存儲庫。如果我點擊標題中的「菜單」按鈕,覆蓋面板應該像上面的演示一樣滑入。
https://github.com/Devthias/BackboneJQM.git
裏面我的路由器我試圖設置數據角色屬性彈出bevor調用changePage功能。
var AppRouter = Backbone.Router.extend({
routes:{
"":"home",
"settings":"settings",
"menuPanel":"menuPanel"
},
initialize:function() {
// Handle back button throughout the application
$('.back').live('click', function(event) {
window.history.back();
return false;
});
this.firstPage = true;
},
....
menuPanel:function(){
console.log('#menuPanel');
this.openPopup(new MenuPanelView());
},
changePage:function (page) {
$(page.el).attr('data-role', 'page');
page.render();
$('body').append($(page.el));
var transition = $.mobile.defaultPageTransition;
$.mobile.changePage($(page.el), {changeHash:false, transition: transition});
},
openPopup:function (page){
$(page.el).attr('data-role', 'popup');
page.render();
$('body').append($(page.el));
var transition = $.mobile.defaultPageTransition;
$.mobile.changePage($(page.el), {});
}
});
有人知道我做錯了什麼,可以幫助我嗎?
非常感謝!
你可能想要嘗試將'page'傳遞給'openPopup'。 – fbynite
是的,你是對的。我錯過了openPopup函數中的頁面參數(更新了存儲庫),但覆蓋面板仍未顯示。現在該網站轉換爲空白頁面。 – Danny