0

JQMを使用してWebサイトを開発しています。AJAX データを介して折りたたみ可能なものを動的に作成しました。今、折りたたみ可能なスライドをスムーズに上下させたい(JQueryモバイル)。問題は .delegate 関数が実行されていることですが、デフォルトのスライド速度を使用して変更されていません。私のコードは次のとおりです。

$('#search-page').delegate('.menu-collapse','expand', function (event) {
      $(this).children().slideDown(300);
  }).delegate('.menu-collapse','collapse', function (event) {
    $(this).children().next().slideUp(300);
      event.stopPropagation();
});

$(this) に問題があると思います。誰でもそれを整理できますか?前もって感謝します。

4

2 に答える 2

0

試してみてください、それは今あなたが望むように正確に動作します

$(document).on('pageinit',function(event){
    $('[data-role="collapsible"]').bind('expand', function (event) {

        $(this).find('.ui-collapsible-content')
               .css('display','none')
               .slideDown(300, function(){
                  $(this).css('display','block');
                });

    }).bind('collapse', function (event) {  

       $(this).find('.ui-collapsible-content.ui-collapsible-content-collapsed')
              .slideUp(300);    
    });
});

ここでフィドル

于 2013-07-11T12:38:01.627 に答える