例1
//定义一个函数,使节点的背景由黄色渐变成白色
var fade = function(node){
var level = 1;
var step = function(){
var hex = level.toString(16);
node.style.backgroundColor = "#FFFF" + hex + hex;
if(level < 15){
level += 1;
setTimeout(step,100);
}
};
setTimeout(step,10);
};
//fade(document.body); //背景由黄色渐变成白色
例2
//点击一个接点,弹出该节点的序号
var add_handlers = function(nodes){
var i;
for(i = 0; i<nodes.length; i+=1){
nodes[i].onclick = function(i){
return function(){
alert(i);
}
}(i);
}
};
var node = document.getElementById("t").getElementsByTagName("span");
add_handlers(node);
例3
var name = "The Window";
var object = {
name : "My Object",
getNameFunc : function(){
return function(){
return this.name; // this 指向全局
};
}
};
alert(object.getNameFunc()()); // The Window
例4
var name = "The Window";
var object = {
name : "My Object",
getNameFunc : function(){
var that = this; // this指向object对象
return function(){
return that.name;
};
}
};
alert(object.getNameFunc()()); // My Object