jQuery Mobile:在加载时打开EXTERNAL面板



我被困在这个:我怎么能使我的外部左面板默认打开。

我像这样定义外部面板:

$(document).on('pagebeforecreate', function () {
    $("#left_sidebar").panel().enhanceWithin();
});

并在init后打开:

$(document).on('pagebeforeshow', function() {
    $("#left_sidebar").panel( "open");    
});

实际上它打开了侧边栏,但页面以某种方式显示在它上面。如果我在页面中定义面板,则一切正常。

任何想法我错了吗?

面板的某些部分可能无法在pageprecreate上计算,因为浏览器还不知道每个元素的位置和方式。

你可以通过将面板初始化放到pagebeforeshow中来解决这个问题,如果初始化在pageshow中可见,则延迟页面显示

最新更新