美文网首页
jQuery中绑定事件时bind和on的区别

jQuery中绑定事件时bind和on的区别

作者: 小m_up | 来源:发表于2017-08-07 19:34 被阅读672次

jquery的bind跟on绑定事件的区别:主要是事件冒泡
jquery文档中bind和on函数绑定事件的用法:

.bind(events [,eventData], handler)

.on(events [,selector]  [,data], handler)

.on方法比.bind方法多一个参数selector.onselector参数是筛选出调用.on方法的dom元素的指定子元素,由于JavaScript的事件冒泡特性,如果我们在父元素上注册了一个事件处理函数,当子元素上发生这个事件的时候,父元素上的事件处理函数也会被触发。如果使用on的时候,不设置selector,那么on与bind就没有区别了。
请看如下代码:

 <ul>
        <li id="li1">1</li>
        <li id="li2">2</li>
</ul>

当没有selector时使用.bind.on

 $('ul').bind('click', function () {    // 等同于$('ul').on('click', function () {
        console.log($(this).text());
});

那么结果为:


当有selector时,
 $('ul').on('click','#li1', function () {   
        console.log($(this).text());
});

点击1显示1,点击2就没有反应了
还有一点,on绑定的事件处理函数,对于未来新增的元素一样可以,但是bind就不行,看下面的代码:

 $('ul').on('click','li', function () {   
        console.log($(this).text());
});
$('ul').append('<li>3<li>');

此时,点击3可以显示出3

 $('ul li').bind('click', function () {   
        console.log($(this).text());
});
$('ul').append('<li>3<li>');

此时,点击3就显示不出来了

相关文章

  • jQuery中绑定事件时bind和on的区别

    jquery的bind跟on绑定事件的区别:主要是事件冒泡;jquery文档中bind和on函数绑定事件的用法: ...

  • jquery的bind跟on绑定事件的区别

    jquery的bind跟on绑定事件的区别:主要是事件冒泡; jquery文档中bind和on函数绑定事件的用法:...

  • 2019-05-14

    jquery中bind和on绑定事件的区别 1.使用bind方法,要在dom挂载之后才能找到相应的dom节点,然后...

  • jquery的bind跟on绑定事件的区别

    主要是事件冒泡; jquery文档中bind和on函数绑定事件的用法: 从文档中可以看出, .on方法比.bind...

  • jquery对节点的操作

    Jquery对事件的绑定 $().bind(“事件类型”, 事件处理); 给jquery绑定一个事件$().bi...

  • jquery - 绑定事件on和bind的区别

    1. on可以对动态创建的元素进行绑定,而bind不行 如:对.btn进行绑定点击事件,点击.btn后会新增另一个...

  • JQuery事件处理

    jQuery有几种绑定事件处理函数的方法,有什么区别: 第一种: $(...).bind("事件名",fn)->a...

  • 事件

    input框事件 jQuery其他事件 绑定事件bind 自定义事件

  • jQuery事件

    jquery 绑定事件 在1.7之前的版本中jQuery处理事件提供了四种事件监听方式,分别是bind、live、...

  • jQuery的基础事件篇

    基础事件 1.绑定事件 jQuery 通过.bind()方法来为元素绑定这些事件。可以传递三个参数:bind(ty...

网友评论

      本文标题:jQuery中绑定事件时bind和on的区别

      本文链接:https://www.haomeiwen.com/subject/gxealxtx.html