RELATEED CONSULTING
相关咨询
选择下列产品马上在线沟通
服务时间:8:30-17:00
你可能遇到了下面的问题
关闭右侧工具栏

新闻中心

这里有您想知道的互联网营销解决方案
jquerybind,jquerybind事件

jQuery中的bind()函数跟on()函数有什么区别呢?

.bind()与.on()的区别:

公司主营业务:成都做网站、成都网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联推出双柏免费做网站回馈大家。

(1)是否支持selector这个参数值。由于javascript的事件冒泡特性,如果在父元素上注册了一个事件处理函数,当子元素上发生这个事件的时候,父元素上的事件处理函数也会被触发。

如果使用on的时候,不设置selector,那么on与bind就没有区别了。

(2)on绑定的事件处理函数,对于未来新增的元素一样可以的,和delegate效果相同,而bind则不行。 

(3) delegate用法与on()相同,只是参数的顺序不同:

扩展资料:

.bind()与.on()的实际应用:

1.bind()是直接绑定在元素上 ,将一本地地址与一套接口捆绑。如无错误发生,则bind()返回0。否则的话,将返回-1,应用程序可通过WSAGetLastError()获取相应错误代码。

用于事件处理程序

function ClassName(){

this.eventHandler = (function(){

}).bind(this);

}

2.on()则实现事件代理, 可以在匹配元素上绑定一个或者多个事件处理函数。

(1) 用来绑定多事件,并且为同一函数,如:

$('div').on('click mouseover',function(){

//do sth

});

(2)多个事件绑定不同函数,如:

$('div').on({

'click':function(){

//do sth

},

'mouseover':function(){

//do sth

}

});

(3)事件代理,如:

html:

button id="bt1"按钮1/button

jq:

$('#bt1').on('click',function(){

$('body').append('button按钮2/button');

});

$('body').on('click','.bt2',function(){

console.log('这是bt2');

}

参考资料:百度百科-bind()

jquery中的bind,live,delegate和on方法的区别是什么

$(selector).bind(event,data,function)

$(selector).live(event,data,function)//jquery1.9版本以下支持,jquery1.9及其以上版本删除了此方法,jquery1.9以上版本用on()方法来代替$(selector).delegate(childSelector,event,data,function)//jquery1.4.2及其以上版本;$(selector).on(event,childselector,data,function)//jquery1.7及其以上版本;jquery1.7版本出现之后用于替代bind(),live()绑定事件方式;

event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等;

单事件处理:例如 $(selector).bind("click",data,function);

多事件处理:1.利用空格分隔多事件,例如 $(selector).bind("click dbclick mouseout",data,function);

2.利用大括号灵活定义多事件,例如 $(selector).bind({event1:function, event2:function, ...}) 

3.空格相隔方式:绑定较为死板,不能给事件单独绑定函数,适合处理多个事件调用同一函数情况;

大括号替代方式:绑定较为灵活,可以给事件单独绑定函数; 

data:可选;需要传递的参数;

function:必需;当绑定事件发生时,需要执行的函数;适用所有版本,但是根据官网解释,自从jquery1.7版本以后bind()函数推荐用on()来代替。

jQuery中bind()怎么去除事件冒泡

使用stopPropagation() 方法;

e.stopPropagation()方法不再派发事件。终止事件在传播过程的捕获、目标处理或起泡阶段进一步传播。调用该方法后,该节点上处理该事件的处理程序将被调用,事件不再被分派到其他节点。

例:div点击事件阻止冒泡;

html

div id="div1"div id="div2"/div/div

js

$("#div2").bind("click",function(e){

e.stopPropagation();//阻止事件冒泡,点击div2的时候将不发生点击div1的事件;

});

jQuery事件绑定方法bind,live,delegate和on的区别

bind是用来绑定一个或多个事件的,live其实bind的一个加强版,用来绑定通过JavaScript或者jQuery添加的DOM元素事件,其语法结构是一样

123456$("p").bind("mouseenter mouseleave",function(){alert("ok");})$("p").live("mouseenter mouseleave",function(){alert("ok");})

delegate用于事件委托,也是绑定过JavaScript或者jQuery添加的DOM元素事件。

123$("div").delegate("p","click",function(){alert("p");})

点击div下面的P执行alert;

而on是在1.7之后新增的,是把bind,live,delegate全部合并在一起了,

123$("div").on("click","p",function(){ alert(1); })

不需要事件委托的时候把P去掉就会变成点击div触发了。

个人建议根据版本来使用,语法其实都差不多,如果你是用1.7版本以上就建议用on,毕竟bind,live,delegate这些将来都会遗弃了,如有错误,请指出。顺便吐槽一下楼上的回答,不走心啊

Jquery中bind和live的区别

Jquery中bind和live的区别如下:

1.bind()可以绑定多个事件,live()一次只能绑定一个事件。

区别在于用live来绑定事件会给所有当前以及将来在页面上的元素绑定事件(使用委派的方式)。比如说,如果你给页面上所有的li用live绑定了click事件。那么当在以后增加一个li到这个页面时,对于这个新增加的li,其click事件依然可用。而无需重新给这种新增加的元素绑定事件。

2.live 目前只支持所有事件的子集,支持列表参考上面的说明。

.live 不支持liveQuery提供的“无事件”样式的回调函数。.live只能绑定事件处理函数。

.live 没有”setup”和”cleanup”的过程。因为所有的事件是委派而不是直接绑定在元素上的。

jQuery中bind()方法中的参数

bind() 方法为被选元素添加一个或多个事件处理程序,并规定事件发生时运行的函数。其语法为:

$(selector).bind(event,data,function)

参数说明如下:

event:规定添加到元素的一个或多个事件。必需。

data:  规定传递到函数的额外数据。可选。

function: 规定当事件发生时运行的函数。必需。

示例如下:

// 当点击鼠标时,隐藏或显示 p 元素:

$("button").bind("click",function(){

$("p").slideToggle();

});


本文名称:jquerybind,jquerybind事件
当前地址:http://lswzjz.com/article/dsisopo.html