我正在尝试通过 ajax 将内容加载到容器(#ajax_content)中。当我点击外部时,我希望能够关闭(隐藏)ajax 加载的内容(#ajax_content 中的所有内容)。但我想绑定里面元素的onClick。
HTML:
<div id="wrapper">
<div id="ajax_content">
</div>
</div>
通过 AJAX 加载的 HTML:
<button id="super_hello" >Click</button>
加载 ajax 内容后的 HTML 将是
<div id="wrapper">
<div id="ajax_content">
<button id="super_hello" >Click</button>
</div>
</div>
Javascript:
$(document).ready(function(){
$('.ajax_link').click(function(event) {
event.preventDefault();
$.get($(this).attr('href'), function(data) {
$('#ajax_content').html('');
$('#ajax_content').append(data);
$('#ajax_content').css({
visibility: 'visible'
});
});
});
$('#ajax_content').click(function(event){
event.stopPropagation();
});
$('#wrapper').click(function(){
$('#ajax_content').hide();
$('#ajax_content').html('');
$(this).hide();
});
});
$(document).on("click","#super_hello",function(e){
alert('clicked'); // I can't get this to work
});
问题:如果我发表评论
$('#ajax_content').click(function(event){
event.stopPropagation();
});
该事件被绑定到 super_hello,但随后 ajax_content 内的任何点击都将传播到关闭 ajax_content 的包装器。