需求:生成十个按钮,内容分别是1~10,点击每个按钮输出当前的序号,即点击1输出1。
看不懂,先留着。
原:http://blog.csdn.net/simoniter/article/details/52515938
for (var i = 1; i <= 10; i++) { var doc = document.createElement('button'); doc.innerHTML = i; //错误写法 doc.onclick = function() { console.log(i); } //方法一 // doc.onclick = function() { // console.log(this.toString()); // }.bind(i); //方法二 // doc.onclick = function (x) { // return function () { // console.log(x); // } // }(i); //方法三 // doc.onclick = function() { // var x= i; // return function () { // console.log(x); // } // }() //方法四 arguments.callee指向匿名函数自身,此方法系统消耗最小 // (doc.onclick = function() { // console.log(arguments.callee.x); // }).x = i; //方法五 // doc.dataset.value = i; // doc.onclick = function(){ // console.log(this.dataset.value); // }; document.body.appendChild(doc); }