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