我需要知道如何在load func(再次jquery)返回的元素上调用click jquery函数。我不能按类名获取元素,我想到的是当我尝试获取它们时它们不存在于DOM中。
这是我的主页:
<div id="content">
<div id="main"></div>
<div style="clear: both;"></div>
</div>
我使用load()jquery函数在#main中加载其他html内容,它运行正常。所以在我的#main里面我得到了这样的内容:
<div id="home_container">
<div id="left_column" class="home_columns">
<img src="images/code.jpg" alt="code" class="pics home_pics" />
<p class="home_text">Code snippets</p>
</div>
<div id="center_column" class="home_columns">
<img src="images/me_home.jpg" alt="me" class="pics home_pics" />
<p class="home_text">About</p>
</div>
<div id="right_column" class="home_columns">
<img src="images/contacts.jpg" alt="code" class="pics home_pics" />
<p class="home_text">Contacts</p>
</div>
然后我调用这样的jquery函数:
$(document).ready(function () {
"use strict";
$('div.home_columns').click(function () {
console.log("clicked!");
});
});
但没有&#34;点击!&#34;登录浏览器控制台。这里有什么问题?我认为,当我试图将func绑定到div时,它不会被原谅?我是对的,如果是的话 - 我怎么能克服这个?
谢谢 尼古拉
答案 0 :(得分:2)
所以我只想使用delegation:
$('#main').on('click', 'div.home_columns', function () {
console.log("clicked!");
});