-1

だから私はこのようなページにいくつかのコードを持っています

<div id="main">
  <div class='module' id ='test1'>1</div> 
  <div class='module' id ='test2'>2</div>
  <div class='module' id ='test3'>3</div>
  <div class='module' id ='test4'>4</div>
</div>

そして、document.load にあるイベントを持つ少しの js

$('.module').on("click", function(){
  if ($(this).hasClass('flipped')) {
    $(this).toggleClass('flipped');   
  } else {
      $('.module').removeClass('flipped');
      $(this).toggleClass('flipped');
  }  
}); 

これは、要素が動的に追加されるまで正常に機能するので、追加するとしましょう

  <div class='module' id ='test5'>5</div>

.on はこれにバインドされていないため、これはクリック可能になりません。

ここで、.on が機能しないことを説明する投稿を読みましたが、解決策が見つかりません..

誰でも助けることができますか?

4

3 に答える 3

4

イベントを親に委任します#main

$('#main').on("click", ".module", function(){
  if ($(this).hasClass('flipped')) {
    $(this).toggleClass('flipped');   
  } else {
      $('.module').removeClass('flipped');
      $(this).toggleClass('flipped');
  }  
}); 
于 2013-10-24T06:47:49.377 に答える
1

これを試して...

$('body').on("click", ".module" , function(){

于 2013-10-24T06:47:55.477 に答える