即点击p之前i已经变成2了
而items[2]是不存在的
因为只有2个p
改成alert(this.nodeValue)就好了
或者用闭包也可以
for(var
i=0
i<items.length
i++)
{
(function(item){
item.onclick
=
function(){
alert(item.nodeValue)
}
})(item[i])
}
情况有很多种。一下列举几种常见的。
第一种情况你的JS外联文件被覆盖了。通常是变量名和函数名相同被覆盖。
第二种情况:如果你是外联JS文件是在head标签中链接,那么有可能 外联JS文件没有window.onload = function(){}
第三种情况:JS文件路径引用错误
第四种情况:js文件引用正确,但是这个文件的API方法使用错误。
以上是常见的几种情况