为什么 src in this.id.src 未定义(在调试器中)[在 iife 中]
Why src in this.id.src undefined (in debugger) [inside an iife]
为什么 this.id.src 中的 src 在调试器中未定义?我不明白为什么这不起作用。我以前有过这个工作,但有一个特定的 id(不是 this.id)有人有什么建议吗?
document.getElementById("a1").addEventListener("click", myFunction);
function myFunction (id) {
console.log(this.id); // works
this.id.src="images/red.jpg";
}
<div>
<img id="a1" src="images/black.jpg">
</div>
id
属性上没有src
属性。你必须直接使用它this.src
。传递给函数的参数是事件而不是 id:
document.getElementById("a1").addEventListener("click", myFunction);
function myFunction(e) {
this.src = "http://via.placeholder.com/150x150";
}
<div>
<img id="a1" src="http://via.placeholder.com/100x100">
</div>
为什么 this.id.src 中的 src 在调试器中未定义?我不明白为什么这不起作用。我以前有过这个工作,但有一个特定的 id(不是 this.id)有人有什么建议吗?
document.getElementById("a1").addEventListener("click", myFunction);
function myFunction (id) {
console.log(this.id); // works
this.id.src="images/red.jpg";
}
<div>
<img id="a1" src="images/black.jpg">
</div>
id
属性上没有src
属性。你必须直接使用它this.src
。传递给函数的参数是事件而不是 id:
document.getElementById("a1").addEventListener("click", myFunction);
function myFunction(e) {
this.src = "http://via.placeholder.com/150x150";
}
<div>
<img id="a1" src="http://via.placeholder.com/100x100">
</div>