0

我希望填补我的理解空白;

我有一个像这样的基本 jQuery 点击功能..

 $('.cl').each(function(e)
 {
      alert('works');
      $(this).click(function()
      {
        alert('no works');
      });
 });

我的 HTML 是这样的:

<body>
<div id='c0'>
    <div class='bO cl'>Button</div>
</div>
</body>

基本的东西。

'works' 警报触发正常 - 但点击功能没有任何反应 - 'no works'不会触发。

$('.cl').click(function()
{
    alert('help');
});

不工作。简单的东西我敢肯定,但我错过了一些东西。

为什么是这样?

4

1 回答 1

0

要确保的一件事是,在 DOM 和 jQuery 初始化后运行事件处理程序,即通过执行以下操作:

$(function() {

   $('.cl').click(function()
   {
      alert('help');
   });

});

或者,如果您cl是在事后加载的,例如通过 Ajax 调用,您可以交替执行此操作

$("body").on("click", ".cl", function() {
   // Your code here
})

这会向 body 注册 click 事件,但只有在实际目标是 type 时才会被调度cl

于 2013-08-16T23:45:41.467 回答