三种情况情况1
<html>
<body>
<a href="http://www.baidu.com">baidu</a>
<a href="http://www.google.com">google</a>
</body>
</html><script>
var aaa = function() {
for (var i = 0; i < document.getElementsByTagName('a').length; i++){
document.getElementsByTagName('a')[i]['onmouseover'] = function(){
this._doTab(1);
}
}
}
aaa._doTab = function (t) {
alert(t);
}new aaa();
</script> 为什么这种情况下会失败?这里的this._doTab()不能这样用么?我把js部分代码改成var aaa = function() {
var self = this;
for (var i = 0; i < document.getElementsByTagName('a').length; i++){
document.getElementsByTagName('a')[i]['onmouseover'] = function(){
self._doTab(1);
}
}
}
aaa._doTab = function (t) {
alert(t);
}同样失败但是改成
var aaa = function() {
var self = this;
for (var i = 0; i < document.getElementsByTagName('a').length; i++){
document.getElementsByTagName('a')[i]['onmouseover'] = function(){
self._doTab(1);
}
}
}
aaa.prototype._doTab = function (t) {
   alert(t);
}
这个就成功了?