0

すべての子の要素を空にしてから、同じクラスの要素を別の要素内に適用しています。

このempty()関数のコールバックが起動していません。このクラス/コールバックの問題で何か不足していますか?

$('.commentsButton').click(function(e){
e.preventDefault();
if ('.openComments').length) {
    $(this).closest('.box').removeClass(openComments);

    $('.commentsBox').empty(function(){
            $(this).closest('.box').find('.commentsBox').load('url.com');
            $(this).closest('.box').addClass(openComments);
        });
} else {
        $(this).closest('.box').find('.commentsBox').load('url.com');
        $(this).closest('.box').addClass(openComments);
    }
});

<div class="box">
  <a class="commentsButton" href="#"></a>
   <div class="commentsBox"></div>
</div>
<div class="box">
  <a class="commentsButton" href="#"></a>
   <div class="commentsBox"></div>
</div>
4

2 に答える 2

1

パラメータなしで空の関数を呼び出して、好きなことをしてください。

$('.commentsBox').empty();
$('.commentsBox').each(function(){
      $(this).closest('.box').find('.commentsBox').load('url.com');
      $(this).closest('.box').addClass(openComments);
});
于 2013-07-29T21:37:10.700 に答える