2014-03-13 54 views
1

我想在我的面板打开之前做一些事情,但我没有运气... Actualy我想用ajax加载它里面的文件,但不幸的是,即使警报不起作用jquery移动面板打开动作之前

<script type="text/javascript"> 
    $("#nav-panelz").panel({ 
    beforeopen: function(event, ui) { } 
    }); 


$("#nav-panelz").on("panelbeforeopen", function(event, ui) { 
    alert('Before Open'); 
}); 

</script> 

体内

<div data-role="panel" data-display="push" data-theme="b" id="nav-panelz" style="z-index:250000;"> 

    <ul data-role="listview"> 
    <li data-icon="delete"><a href="#" data-rel="close" style="color:#09F;">Close menu</a></li> 
<li><a href="#panel-responsive-page2">Accordion</a></li> 
    <li><a href="#panel-responsive-page2">Ajax Navigation</a></li> 
    <li><a href="#panel-responsive-page2">Autocomplete</a></li> 
    <li><a href="#panel-responsive-page2">Buttons</a></li> 
    </ul> 
</div> 

有什么建议?

+0

它是一个外部面板(即不在页面中)? – ezanker

+0

页面@ezanker –

回答

3

尝试把代码中的jQuery Mobile的页面事件里面像createpage

$(document).on("pagecreate", "#page1", function() { 
    $("#menuA").on("panelbeforeopen", function(event, ui) { 
     alert('Before Open'); 
     $("#pnlContent").html('<p>Dynamically added content</p>'); 
    }); 
}); 

这里是一个DEMO

你现在的样子,面板上有可能不当您尝试附加到事件时,它已被增强/初始化。