
正文
jquery中bind和live,jquery中bind和on的区别
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
jquery中的bind,live,delegate和on方法的区别是什么
大括号替代方式:绑定较为灵活,可以给事件单独绑定函数;data:可选;需要传递的参数;function:必需;当绑定事件发生时,需要执行的函数;适用所有版本,但是根据官网解释,自从jquery7版本以后bind()函数推荐用on()来代替。
作用不同 on():在被选元素及子元素上添加一个或多个事件处理程序。live():为被选元素附加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。
如果使用on的时候,不设置selector,那么on与bind就没有区别了。(2)on绑定的事件处理函数,对于未来新增的元素一样可以的,和delegate效果相同,而bind则不行。
相关问答
Q1: jQuery事件绑定方法bind,live,delegate和on的区别
(2)on绑定的事件处理函数,对于未来新增的元素一样可以的,和delegate效果相同,而bind则不行。
作用不同 on():在被选元素及子元素上添加一个或多个事件处理程序。live():为被选元素附加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。
简单来说,.bind()是直接绑定在元素上,而.live()和.delegate()则是通过冒泡的方式来绑定到元素上的。
Q2: jquery中以下哪些方法可以实现事件代理
1、(1)是否支持selector这个参数值。由于javascript的事件冒泡特性,如果在父元素上注册了一个事件处理函数,当子元素上发生这个事件的时候,父元素上的事件处理函数也会被触发。
2、关于操作动态添加的DOM,需要用delegate或on来进行事件绑定,动态添加的DOM元素也同样绑定了该事件,原理就是事件代理,即事件冒泡。
3、on():$(selector).on(event,childSelector,data,function)childSelector可选。规定只能添加到指定的子元素上的事件处理程序(且不是选择器本身,比如已废弃的 delegate() 方法)。
4、.bind()是直接绑定在元素上 .live()则是通过冒泡的方式来绑定到元素上的。更适合列表类型的,绑定到document DOM节点上。和.bind()的优势是支持动态数据。
5、新建一个静态页面bind.html,并引入jquery核心文件。在标签中,插入一个button按钮,添加id属性值。在标签中,添加按钮点击事件,利用on()方法绑定。
6、真实的开发中,这种代码的实现方式是很糟糕的。建议了解一下“事件代理”,用这种方式实现。jQuery 对“事件代理”有直接支持。
Q3: Jquery中bind和live的区别
1、bind会在事件在绑定阶段bind时就会判断绑定事件的对象target是否存在,而且只针对当前元素进行绑定,而不是绑定到父节点上。以下举例。按钮1会触发bind和live的绑定事件。按钮2会触发live的绑定事件。
2、bind()方法为每个匹配元素的特定事件绑定事件处理函数。bind()方法的底层逻辑是on()方法。 .bind() 方法是用于往文档上附加行为的主要方式。
3、作用不同 on():在被选元素及子元素上添加一个或多个事件处理程序。live():为被选元素附加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。
4、延时绑定事件功能不同:jquery $(#btn).click在文档流中,后续通过脚本动态添加的元素(符合 id=#btn),是没有绑定click事件的。
Q4: jQuery传参数
1、循环生成列表的时候为Button加属性就可以了。
2、定义和用法:post() 方法通过 HTTP POST 请求从服务器载入数据。语法:jQuery.post(url,data,success(data, textStatus, jqXHR),dataType)url :必需。规定把请求发送到哪个 URL。data :可选。映射或字符串值。
3、通过编辑器写上html页面代码,一个下拉选择框,一个按钮,引入jq文件。查看HTML显示效果,一个下拉选择框,一个按钮。通过jq代码$(select option:selected)获取选中的值,现在通过点击按钮获取选中的值。
4、jquery中,所有的html标签都可以被包装为jQuery对象:var dtlist = (datalist);//或者datalist 的class、id等属性 自定义函数的参数为jQuery对象,传递参数的时候直接使用 dtlist 就可以。
Q5: 事件绑定方法live和bind的区别及使用场合
1、bind()方法为每个匹配元素的特定事件绑定事件处理函数。bind()方法的底层逻辑是on()方法。 .bind() 方法是用于往文档上附加行为的主要方式。
2、live方法,只有在click事件发生的时候,才会去检测绑定事件的对象target是否存在,所以live方法可以实现后来新增子元素的事件的绑定。
3、绑定方式不同:.live()则是通过冒泡的方式来绑定到元素上的。更适合列表类型的,绑定到DOM节点上。而click()是直接绑定在元素上。底层API支持不同:click()方法:在jqeury事件处理API中,bind()是其API基础。
4、因此,如果要在事件中阻止委托事件被触发,可以调用event.stopPropagation()或者返回false防止委派处理程序冒泡。简单来说,.bind()是直接绑定在元素上,而.live()和.delegate()则是通过冒泡的方式来绑定到元素上的。
关于jquery中bind和live和jquery中bind和on的区别的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。





