JQuery检测标签是否自动关闭

Hat*_*are 9 jquery

有没有办法检测标签是否像JQuery一样自动关闭,就像图像标签一样?动态的东西不仅仅是图像标签.

if ($('.selector')[0].tagName.toLowerCase()=="img") {
    // do something
}
Run Code Online (Sandbox Code Playgroud)

Nic*_*ver 13

jQuery在内部使用此列表:

/^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i
Run Code Online (Sandbox Code Playgroud)

你也可以做到的:

if(/^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i.test($('.selector')[0].tagName)) {
//do something
}
Run Code Online (Sandbox Code Playgroud)


cle*_*tus 3

您是否需要区分空元素和自关闭元素?如果没有,您可以使用:

if ($(".selector").is(":empty")) {
  // do something
}
Run Code Online (Sandbox Code Playgroud)

但是,如果您正在谈论检测给定的 HTML 标记是否应该为空,那么您不能以编程方式执行此操作,因为您不会阻止创建无效的 HTML,并且您需要根据 DTD 对其进行验证才能找到答案。