0

我无法获取此 HTML 的点击事件:

<ul id="frd_overlay_list">
<li><div class="divLink"><div id="1"><img src="path"><div class="frdName">Name</div></div></div></li>
<li><div class="divLink"><div id="2"><img src="path"><div class="frdName">Name</div></div></div></li>
</ul>

和 JQuery 脚本:

$('li').click(function(){
    console.log('Not working');
});

我能够获得 ul 元素的点击事件,即

$('ul#frd_overlay_list').click(function(){
    console.log('This works');
});

我已经尝试过了,但这也不起作用:

$('ul#frd_overlay_list li').click(function(){
    console.log('Doesn't work either');
});

请给我指点我做错了什么?

4

1 回答 1

3

除了最后一个示例外,您的所有示例都有效:您需要对'字符串进行转义或使用双引号

$('ul#frd_overlay_list li').click(function(){
    console.log("Doesn't work either");
});

由于您想为动态添加的元素应用点击事件,您可以使用onjQuery 的功能。

  • on将为动态添加的元素绑定事件处理程序
  • bind只会为当前存在的元素绑定事件处理程序。

用法on

$("ul#frd_overlay_list li").on("click", function(){
  console.log("Doesn't work either");
});

小提琴

于 2013-05-06T10:25:57.163 回答