如何(通过JavaScript)向类添加元素?
假设我想将一个新创建的段落(使用document.createElement(“p”)添加到一个html文件中现有的div(类名为“container”)中。有没有办法通过调用一些方法来做到这一点 因为有一个getElementById()方法,我想我也会使用getElementByClassName()方法,但这并不存在;存在的是getElementsByClassName()。解决这个问题的一种方法是将div更改为id而不是类名,并使用getElementById()将段落添加到div中,但我想知道是否有一些方法可以调用,以帮助我检索类元素(而不是类本身中的元素)如何(通过JavaScript)向类添加元素?,javascript,html,Javascript,Html,假设我想将一个新创建的段落(使用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,会发生什么