检查-节点可以有孩子吗?

BbI*_*TOP 4 html javascript dom

除了检查tagName之类的方法之外,是否存在一种便携式方法来检查某些元素是否可以接受并显示childNodes switch(node.tagName)?我需要实现某种d&d,我想将移动的节点插入到最近的document.elementFromPoint位置(已拖放节点的位置)。但是,据我了解,<img>例如在中插入一个元素是没有意义的,因此insertBefore在这种情况下,我将需要此img的parentNode。当然,可以对标签列表进行检查,但是也许有更便携式和简单的解决方案?

谢谢

Ber*_*rgi 5

不,我认为没有内置的功能可以检查某个标签是否为空标签。HTML是一个非常随意的决定,没有DOM属性。(在XML文档中,每个元素理论上都可以有子级)。

因此,核对官方清单确实是必经之路。对于HTML4,请参阅哪些HTML标签没有内容,对于HTML5,请参见规范中的void元素列表

area, base, br, col, embed, hr, img, input, keygen, link, menuitem, meta, param, source, track, wbr
Run Code Online (Sandbox Code Playgroud)