首页 > 解决方案 > pagecontainer 触发事件(多页站点)

问题描述

好的,我正在使用 JQM 1.4.5,我正在尝试解决现有多页面/文件站点上所有已弃用的命令。

这可能看起来很简单,但是在谷歌上花了几个小时找到了几个不同的想法后,其中一些相互冲突,我终于用尽了所有的选择。

我正在尝试替换现有事件 [pageinit] 和 [pagebeforeshow]。根据 JQM 网站,我可以通过两种方式进行绑定:

$( ".selector" ).on( "pagecontainerbeforeshow", function( event, ui ) {}      );

$( ":data('mobile-pagecontainer')" ).pagecontainer({
  beforeshow: function( event, ui ) {},
  beforehide: function( event, ui ) {},
  show: function( event, ui ) {},
  hide: function( event, ui ) {}
});

我试过了:

$( "#pageDetails" ).on( "pagecontainershow", function( event, ui ) {}   
alert("show");     );

$("#pageDetails").pagecontainer({
    create: function( event, ui ) {
            alert("Create");
        },
        show: function( event, ui ) {
            alert("show");
        },
        beforeshow: function( event, ui ) {
            alert("show");
        }
    });

其中“创建”按预期触发,但仅此而已。

在我的 index.html 页面上,我在初始页面之外有脚本,这些脚本在所有页面上运行,在每个 html 文件中,我在页面内有与每个页面相关的脚本。

以前我有:

$("#pageDetails").off("init");
$("#pageDetails").on("init",function(){ 
});

$("#pageDetails").off("pagebeforeshow");
$("#pageDetails").on("pagebeforeshow",function(){   
});

这两种火都很好。

如何转换为较新的方法?

标签: jquery-mobile

解决方案


推荐阅读