按钮的背景颜色:# 0f0 {;}



按钮


VAR按钮= document.getelementbyid(按钮);
button.onclick =函数(){
警报(此ID);
};
我们可以看到这个按钮的上下文





此时添加绑定

复制代码代码如下所示:

var text = document.getelementbyid(文本);

VAR按钮= document.getelementbyid(按钮);

button.onclick =函数(){

警报(此ID);

绑定(文本);

我们可以看到这个按钮的上下文



此时,将发现这将被转换为文本。

函数的文字也适用于保持向上和向下的方向(这个)不变。


var obj = { {
颜色:# CCC
元:document.getelementbyid(中的),
事件:函数(){
document.getelementbyid(按钮)。AddEventListener(单击
console.log(本);
this.element.style.color = this.color;
}绑定(这个)
返回此;
},
init:函数(){
this.events();
}
};
Obj.init();


在这一点上的点击按钮文字颜色会发生变化。可以看出,这不是按钮但是Obj。

绑定方法()在IE 6,7,8是不适用的,需要通过扩展函数原型实现这一方法的扩展。


如果(!函数.原型.绑定){

function.prototype.bind =功能(obj){
var片= {}。切片,args = slice.call(参数1),自此,NOP =函数(){()
},绑定=函数(){(){
返回self.apply(这是NOP这(目标:| | { }),
Args.concat(slice.call(参数)));
};

nop.prototype = self.prototype;

bound.prototype =新NOP();

返回绑定;
};
}


在这一点上,你可以看到绑定()也支持ie6,7,8。

复制代码代码如下所示:

array.prototype.slice片=,



或



array.prototype.slice.call数组(数组,0);



将相似数组转换为数组。