jquery .on(‘click’,func)功能没有做它的工作

前端之家收集整理的这篇文章主要介绍了jquery .on(‘click’,func)功能没有做它的工作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何创建问题:

>点击现有的触发链接 – 发生什么(通过)
>点击“添加触发器”按钮,该按钮附加一个新的触发器链接
>点击新创建的链接,它不会像从开始存在的第一个2链接那样做(失败)

这是我的例子 – :http://jsbin.com/equjig/3/edit

我认为.on(‘click’,func)函数对于将事件添加到dom中的当前元素中是有好处的,但是对于将来添加到dom的元素也是如此.

这是我目前的javascript:

$(document).ready(function() {
  $(".link").on('click',function(e) {
    e.preventDefault();
    $("#out").append("clicked<br/>");
  });

  $("#b1").on('click',function() {
    $("#p1").append("<a href='#' class='link'>new trigger</a>");
  });

这里是HTML

<button type="button" id="b1">add trigger</button>
  <p id="p1">
    <a href="#" class="link">trigger 1</a>
    <a href="#" class="link">trigger 2</a>
  </p>
  <div id="out"></div>

注意 – im使用jQuery 1.7

谢谢!

解决方法

你几乎在那里…

工作实例:http://jsbin.com/equjig/6/edit

$(document).ready(function() {
    $('#p1').on('click','.link',function(e) {
        e.preventDefault();
        $("#out").append("clicked<br/>");
    });
});

这将工作 – 您应该选择.link元素的父div(我已经使用$(‘#p1’)在这里,像在你的jsbin)

猜你在找的jQuery相关文章