使用安全吗$("<div />").appendTo($mySelector)
?即使不是有效的 HTML 元素,它也能在每个浏览器中工作吗?
我问是因为它真的比$("<div><div />")
使用安全吗$("<div />").appendTo($mySelector)
?即使不是有效的 HTML 元素,它也能在每个浏览器中工作吗?
我问是因为它真的比$("<div><div />")
是的。如果您查看源代码,则此案例甚至得到了优化。
/^<(\w+)\s*\/?>(?:<\/\1>|)$/
<div / > // your case
如果存在或不存在 a/
并且不包含在组中,则此正则表达式将匹配。唯一的分组表达式是实际div
使用的标签名称 ( )。
如果您仔细观察,您会发现以下内容都以相同的方式处理:
<div>
<div />
<div></div>
<div /></div>
它将正常工作。jQuery
处理翻译。
是的,但为什么不使用$(document.createElement('div'));
它比使用 jquery 创建元素要快。它可以在不运行正则表达式并需要 jquery 翻译的情况下工作。
有关使用不同方法创建元素的测试,请参阅此SO 答案