【发布时间】:2020-08-19 15:41:42
【问题描述】:
我即将编写一个函数来创建一个图像元素,该图像元素被它所创建的父链接元素包围......
function makeImage(source, link) {
let hyperlink = document.createElement("a").setAttribute("href", link);
let newImage = document.createElement("img");
newImage.setAttribute("src", source);
newImage = hyperlink.appendChild(newImage);
return newImage;
}
创建“a”元素的过程出了点问题。每次调用makeImage 时都会抛出一个错误...
Uncaught TypeError: Cannot read property 'appendChild' of undefined
此错误与我的函数代码中的以下行有关...
newImage = hyperlink.appendChild(newImage);
感谢任何指向正确方向的提示。
【问题讨论】:
-
... .setAttribute("...", "...")的返回值为undefined,因此hyperlink确实具有后一个值,因此根本无法通过hyperlink获得任何方法。将元素创建和属性分配拆分为两个单独的部分。
标签: javascript html dom element