我不希望验证失败,因为某些东西不是100%的标准(但是将会工作)。
解决方法 更新:这个答案是有限的 – 请看下面的编辑。扩大@ kolink的答案,我用:
var checkHTML = function(HTML) { var doc = document.createElement('div'); doc.INNERHTML = HTML; return ( doc.INNERHTML === HTML );}
即,我们用HTML创建一个临时div。为了做到这一点,浏览器将基于HTML字符串创建一个DOM树,这可能涉及关闭标签等。
将div的HTML内容与原始HTML进行比较会告诉我们浏览器是否需要更改任何内容。
checkHTML('<a>hell<b>o</b>')
返回false。
checkHTML('<a>hell<b>o</b></a>')
返回true。
编辑:由于@Quentin在下面注意到,由于各种原因,这是非常严格的:即使关闭标记对于该标签是可选的,浏览器通常会修复添加省略的结束标签。例如:
<p>one para<p>second para
…被认为是有效的(因为Ps被允许忽略关闭标签),但是checkHTML将返回false。浏览器也会使标签案例正常化,并改变空格。在决定使用这种方法时,您应该了解这些限制。
总结以上是内存溢出为你收集整理的检查HTML代码段是否适用于Javascript全部内容,希望文章能够帮你解决检查HTML代码段是否适用于Javascript所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)