Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何(通过JavaScript)向类添加元素?_Javascript_Html - Fatal编程技术网

如何(通过JavaScript)向类添加元素?

如何(通过JavaScript)向类添加元素?,javascript,html,Javascript,Html,假设我想将一个新创建的段落(使用document.createElement(“p”)添加到一个html文件中现有的div(类名为“container”)中。有没有办法通过调用一些方法来做到这一点 因为有一个getElementById()方法,我想我也会使用getElementByClassName()方法,但这并不存在;存在的是getElementsByClassName()。解决这个问题的一种方法是将div更改为id而不是类名,并使用getElementById()将段落添加到div中,但

假设我想将一个新创建的段落(使用document.createElement(“p”)添加到一个html文件中现有的div(类名为“container”)中。有没有办法通过调用一些方法来做到这一点

因为有一个getElementById()方法,我想我也会使用getElementByClassName()方法,但这并不存在;存在的是getElementsByClassName()。解决这个问题的一种方法是将div更改为id而不是类名,并使用getElementById()将段落添加到div中,但我想知道是否有一些方法可以调用,以帮助我检索类元素(而不是类本身中的元素)


我试着在网上查找,但我找到的是“如何将类名添加到元素”的答案,这不是我想知道的。对于一个元素,这将按DOM顺序选择第一个:

var p=document.createElement(“p”);
p、 innerHTML=“p元素”;
document.querySelector(“.container”).appendChild(p)

container
HTML DOM元素的Id在文档中必须是唯一的,因此按Id请求元素只会返回一个元素(如果没有匹配的元素,则返回null)

但是,一个类名可以应用于多个元素,因此在按类搜索时,您希望得到零个或多个元素,因此getElementsByClassName返回一个集合

因此,如果您有一个具有类名容器的元素列表,并且您知道您的文档(希望)只包含一个具有该名称的元素,那么您可以选择getElementsByClassName返回的第一个元素-例如,
getElementsByClassName('container')[0]


注意-GetElementsByCassName返回类直接应用到的所有元素,这些元素是调用它的元素的子元素。我将您的查询解释为与原始问题上下文中的整个文档相关。

document.querySelector('.classname');非常感谢。我想我看起来不太好。我会小心的。如果您有2个或3个具有该类名的div,会发生什么