我有一个索引页index.php
,当用户点击一个项目时(为了这个问题,假设该项目包含在名为aeffect.html
的html页面中),它会加载aeffect.html
成为div:
<div id="popupContainer"></div>
包含在index.php
上。
但是,index.php
上有很多项目,每个项目都有一个关闭按钮。我尝试使用此变量清空popupContainer
,希望它将其重置为空,aeffect.html
会消失。
//Close property
$("a.close").click(function(){
$("#popupContainer").empty();
});
这似乎不起作用,我不确定如何使这项工作。有没有办法让aeffect.html
的行动能够控制index.php
上的div?
这是完整的jquery:
$(document).ready(function() {
//Find & Open
$(".projectThumb").click(function(){
$("#popupContainer").load("/aeffect.html");
});
//Close property
$("a.close").click(function(){
$("#popupContainer").empty();
});
});
这是index.php
的html<div id="container">
<div class="projectThumb">
<img src="/img/aeffect_button_static.gif" width="146" height="199" class="button" name="aeffect" alt="" />
<p class="title">A.EFFECT: Film Poster</p>
</div>
</div>
<div id="popupContainer"></div>
和aeffect.html的html
<div class="projectPopup" id="aeffect">
<a class="close">Close ×</a>
<img src="/img/aeffect_popup.jpg" width="500" height="729" alt="" />
<p class="description">Description</p>
</div>
答案 0 :(得分:3)
当$('a.close').click()
加载时,a.close
处理程序将添加到所有index.php
元素。这意味着加载内容中的a.close
没有附加处理程序。
在加载新内容后附加处理程序,或改为使用$('a.close').live('click', ...)
。