开发者问题收集

appendChild 不是函数错误(JAVASCRIPT)

2016-03-04
14873

我有这个

var inviteSection = document.getElementByClassName("invitedFriends");
var friend = document.createElement("div").class = "friend";

var mail = document.createElement("p").class = "mail";
var span = document.createElement("span").class = "status accepted";

function main() {
    inviteSection.appendChild(friend);

    friend.appendChild(mail);
    friend.appendChild(span);
}

main();

当我运行这个 chrome 控制台时,它显示 'Uncaught TypeError:inviteSection.appendChild 不是一个函数' 有没有什么解决办法,请帮帮我!

1个回答

问题在于,正如 Akshay Arora 指出的那样,按类名获取元素的方法必须是复数。这意味着它将始终返回一个类似数组的元素集合,即使它只找到一个具有该类名的元素。(这就是 Arun P Johny 所说的 NodeList。)

如果您绝对确定只有一个具有该类名的元素,那么您只需将第一行更改为

var inviteSection = document.getElementsByClassName("invitedFriends")[0];

如果有多个具有此类名的元素,这将只为您提供第一个元素。

Shannon Scott Schupbach
2016-03-04