2

ここに見られるように、jquery モバイル パネル イベントに関連付けることができないようです

http://jquerymobile.com/demos/1.3.0-rc.1/docs/panels/events.html

$(document).on('beforeopen', ".ui-panel", function() {
    alert('open');
});
$(document).on('beforeclose', ".ui-panel", function() {
    alert('close');
 });

また

 $(document).on('open', ".ui-panel", function() {
    alert('open');
});
$(document).on('close', ".ui-panel", function() {
    alert('close');
 });

または、パネルでコンテキストを使用することもできます

$('.ui-panel',context).on('open', function() {
    alert('opened');
});

context は現在のページの jquery オブジェクト変数です

4

3 に答える 3

6

jQuery モバイル APIを見てみる

beforeopen(event, ui)のタイプであるの例panelbeforeopenを提供します。API ドキュメントでこれらの例を提供します。

beforeopen1)コールバックを指定してパネルを初期化します。

$( ".selector" ).panel({
  beforeopen: function( event, ui ) {}
});

2) イベント リスナーをイベントにバインドしpanelbeforeopenます。

$( ".selector" ).on( "panelbeforeopen", function( event, ui ) {} );
于 2013-05-24T02:03:11.730 に答える
1

$( document ). on( "pageinit", function( event, data ){..... 内にコードを挿入する必要があります

   $(document).on( "pageinit", function( event, data ){
     $( ".ui-panel" ).on( "panelbeforeclose", function( event, ui ) {
        // your code here
     } );
   });
于 2014-10-16T15:15:23.997 に答える
0

それが機能するには、正しい div を参照する必要があります。セレクターは、data-role="panel" を持つ div を参照する必要があります。

$(window).on("load",function(){

    $( "#your-panel-id" ).on( "panelclose", function( event, ui ) {
        alert ('hi') ;
    }); 
}); 
于 2015-10-18T02:39:18.560 に答える