将jquery绑定到动态加载的内容
我有以下html树:将jquery绑定到动态加载的内容,jquery,Jquery,我有以下html树: <div class="section yellow" id="section1"> <div id="content-wrap1" class="content-wrap"> </div> 这将成功执行,结果HTML如下所示: <div class="section yellow" id="section1"> <div id="content-wrap1" class="content-wrap"&
<div class="section yellow" id="section1">
<div id="content-wrap1" class="content-wrap">
</div>
这将成功执行,结果HTML如下所示:
<div class="section yellow" id="section1">
<div id="content-wrap1" class="content-wrap">.
<div id="content">
<a href="whoweare.php">Who we are</a>
<a href="whatwedo.php">Our team</a>
<p>ABOUT US : Dance is a type of art</p>
</div>
</div>
<div class="section yellow" id="section1">
<div id="content-wrap1" class="content-wrap">.
<div id="content">
<a href="whoweare.php">Who we are</a>
<a href="whatwedo.php">Our team</a>
<p>Hi there! How are you?</p>
</div>
</div>
Ques1:这是()上的的正确用法吗?因为当我点击链接时,屏幕上不会出现alert 1
,页面只会导航到whoware.php
问题2:如果我确实获得了警报,从理论上讲,是否有可能单击一个加载内容的链接来替换最初单击的链接?问题1
您的bind语句应该如下所示:
$(document).on("click", "#section1 #content-wrap1 #content a", function() {
...
});
请注意,我们现在绑定到文档
对象,以容纳与动态或其他方式加载的第二个选择器(#section 1#content-wrap1#content a
)匹配的任何和所有元素
另外,请注意第二个选择器(空格)中的更正
问题2
从理论上讲,是否有可能单击一个加载内容的链接来替换最初单击的链接
是的。总共。问题1:这是on()的正确用法吗?因为当我点击链接时,屏幕上不会出现警报1,页面只会导航到whoware.php
- 您缺少一个美元符号:
$
并使用文档
您将同一个id绑定到同一个id上,这是不正确的,如果您愿意:&如果您更愿意知道原因
代码
$(document).on("click", "#content a", function(){
alert("1");
toLoad = $(this).attr('href')+' #content';
$('content-wrap1').load(toLoad);
})
问题2:如果我真的收到了警报,从理论上讲,是否有可能单击一个加载内容的链接来替换最初单击的链接
- 这可能会帮助您:
- +1,回答得好兄弟,请修复此选择器
#第1节#content-wrap1#content a
@undefined谢谢bruverno:)
选择#section1#content-wrap1#content a
有什么问题吗?@sounds请参见上面的帖子,即techfoobar,进一步查看这里:也可以查看这里的:)
哦,顺便说一句,如果我使用最近的父ID(如$(“#section1')
,而不是$(文档)
。有什么想法?
('#section1').on("click", "#section1#content-wrap1#content a", function(){
alert("1");
toLoad = $(this).attr('href')+' #content';
$('content-wrap1').load(toLoad);
}
$(document).on("click", "#section1 #content-wrap1 #content a", function() {
...
});
$(document).on("click", "#content a", function(){
alert("1");
toLoad = $(this).attr('href')+' #content';
$('content-wrap1').load(toLoad);
})