关于bind()方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于bind()方法相关的知识,希望对你有一定的参考价值。
1.Function.prototype.bind
返回一个新的函数对象,该函数对象的this绑定到了thisArg
参数上。从本质上讲,这允许你在其他对象链中执行一个函数。
2.bind()--也是改变函数体内this的指向;
apply的常用用法:详见http://blog.csdn.net/a_dangdang/article/details/50986168
on()
根据官网解释,自从jquery1.7版本以后bind()函数推荐用on()来代替。简要描述on() 为指定的元素,添加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。使用 on() 方法的事件处理程序适用于当前或未来的元素(比如由脚本创建的新元素)。
使用方式
$(selector).on(event,childselector,data,function)
event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等;
单事件处理:例如 $(selector).on("click",childselector,data,function);
多事件处理:1.利用空格分隔多事件,例如 $(selector).on("click dbclick mouseout",childseletor,data,function);
2.利用大括号灵活定义多事件,例如 $(selector).on({event1:function, event2:function, ...},childselector);
3.空格相隔方式:绑定较为死板,不能给事件单独绑定函数,适合处理多个事件调用同一函数情况;
大括号替代方式:绑定较为灵活,可以给事件单独绑定函数;
childSelector: 可选;需要添加事件处理程序的元素,一般为selector的子元素;
data:可选;需要传递的参数;
function:必需;当绑定事件发生时,需要执行的函数;
以上是关于关于bind()方法的主要内容,如果未能解决你的问题,请参考以下文章
关于Uncaught TypeError: nt.setState.bind is not a function报错解决