我有一个使用jQuery Mobile 1.4.5版本构建的Cordova应用程序
在这个应用程序中有一个页面,其中有4个可折叠,其中包含多个可折叠。
每次展开嵌套的可折叠项时,我都需要触发一段代码。为此,我使用了一个css类并为这些可折叠程序绑定了一个展开事件监听器。
当我制作一个jsFiddle时,它可以工作,但在应用程序上它不会运行并且不会在断点处停止(使用chrome远程调试),也没有任何类型的错误。
我的javascript看起来像这样:
$( ".msg_head" ).on( "collapsibleexpand", function( event, ui ) {
alert('expand');
} );
可以在这里查看小提琴:fiddle
答案 0 :(得分:1)
我使用此js代码更新了fiddle的工作解决方案:
$(document).on( "collapsibleexpand", ".msg_head",function( event, ui ) {
alert('expand');
} );
答案 1 :(得分:1)
jcarrera的回答将起作用(事件授权)。但是从jQuery Mobile的角度来看,问题在于你不是在jQM pagecreate事件中创建处理程序。因此,可折叠性尚不存在。将pagecreate用于包含可折叠的页面,如下所示:
$(document).on("pagecreate","#your-page-id", function(){
$( ".msg_head" ).on( "collapsibleexpand", function( event, ui ) {
alert('expand');
} );
});
更新了 FIDDLE