2017-05-30 6 views
0

誰かが同じページのサムネイル画像をクリックしたときに別のページから情報を読み込むdivがあります。divを閉じるdiv内のボタンをクリックすると

現在、サムネイル画像をクリックすると、ページ上部のdiv #dynamicが読み込まれ、別のページの情報が表示されます。私はその中のどこかをクリックするのではなくdivを閉じるために、ユーザーがクラスbutton_closeを与えたクローズボタンをクリックできるようにしたい。ボタンは#dynamic div内にも表示されています。

$(document).ready(function(){ 
    $('nav.main > a').click(function(e){ 
    e.preventDefault(); 
    $("#dynamic").load($(this).attr('href') + " .product_content",()=>{ window.scrollTo(0, 0) }).fadeIn('slow'); 
    }); 
     $(".button_close").click(function(){ 
      $(".product_container").html (''); 
     }); 
    }); 
+0

を使用することができますハンドラをクリックします –

+0

"*人がDIV内のどこかをクリックすると、divは閉じます*"どのdiv? [MCVE] – Pete

+0

@Peteをご覧ください。ありがとうございました。私はそれを希望通りに明確にした。 – Cabon

答えて

1

あなたclose_buttonが動的に生成されているので、あなたは '.button_close' に)(e.stopPropagationを追加し、次の

$('body').on('click', '.button_close', function(){ 
    $('#dynamic').html(''); 
}); 

簡単な例

<!DOCTYPE html> 
<html> 
<body> 

<script src="http://code.jquery.com/jquery-latest.js"></script> 

<script> 
function loadDiv() { 
    $('#dynamic').html('<p>Some content loaded from another page</p><div class="button_close">Close Me</div>'); 
} 

$('body').on('click', '.button_close', function(){ 
    $('#dynamic').html(''); 
}); 
</script> 

<div id="dynamic"></div><br><br> 
<button onclick="loadDiv()">Load Div</button> 

</body> 
</html> 
関連する問題