3

你能创造一个元素而不是每次都那样做吗?

var button = document.createElement('button');
button.class = codebuttons;
button.value = Backup

例如

document.querySelector('.right.Sub').appendChild(document.createElement("button").setAttribute("class", "codebuttons"));
4

1 回答 1

2

您的“例如”代码与顶部的代码非常不同,但都需要修复。

首先是您的初始代码。除了你需要用来.className设置类之外,这将起作用。当然,您需要引号来创建字符串。

var button = document.createElement('button');
button.className = "codebuttons";
button.value = "Backup";

其次,您的底部代码将不起作用,因为您没有附加元素。您正在附加 的返回结果.setAttribute(),即undefined.

但是,您可以链接.setAttribute()到末尾,.appendChild()因为它返回附加的元素。

document.querySelector('.right.Sub')
        .appendChild(document.createElement("button"))
        .setAttribute("class", "codebuttons");

然而,在旧版本的 IE 中设置"class"使用setAttribute(). 因此,请按照第一个示例设置属性。

document.querySelector('.right.Sub')
        .appendChild(document.createElement("button"))
        .className = "codebuttons";
于 2013-07-26T17:30:28.913 回答