有没有办法找出HTML-tagName是成对还是单独(Standalone-Tag)?
例如。 <div></div>, <em></em>, <p></p>, ...
他们是成对的,但<br/>, <input>, <area> ...
是独立的。
我需要一个函数来确定输入的HTML代码片段是否正确。因此,该功能必须调查哪些HTML-Element可以使用Standalone-Tag创建。 您是否知道如何确定HTML元素是否是独立的?除了例子 像这样的东西:
var myArray = [ list of Standalone-Tags ];
if(jQuery.inArray("test", myArray) != -1 ) { ... }
感谢。
答案 0 :(得分:3)
浏览器没有内置的元素列表,这些元素被定义为空。
您最可靠的选择是通过阅读HTML规范手动创建一个。
或者,您可以创建一个元素,并在将其转换为HTML时查看浏览器返回的内容。
var element = prompt("What element name? e.g. br");
var container = document.createElement('div');
var content = document.createElement(element);
container.appendChild(content);
var reg = new RegExp("/" + element);
alert(reg.test(container.innerHTML) ? "Not Empty" : "Empty");