在特定HTML注释后插入HTML块
我想知道我是否可以在特定的HTML注释后插入HTML代码,而不是在HTML元素(如
。
例如,我想在下面的第一个评论标记之后插入开始标记
; 以及第二个注释标记后的结束标记
。 有人知道如何解决这个问题吗?
Page Content Here
先感谢您。
埃琳娜
HTML comment
在DOM层次结构中具有自己的对应节点,并且它的nodeType
属性为8
。 像Firebug或Google Console这样的DOM检查器不显示它们,但是,您可以通过查看页面源找到它们,如果元素是body
元素的子元素,则可以通过以下方式过滤childNodes
:
$('body').contents().each(function(i, elem){ if (elem.nodeType == 8) { // This is a Comment node // Comment { data=" Insert Closing Tags Below", length=26, nodeType=8, more...} // You can select all the next sibilngs of the first // Comment node including the second Comment Node // and then wrap all of them } });
做你想做的事没有意义,浏览器只显示服务器发送的文档的初始版本,使用JavaScript操作文档不会改变源视图。 此外,您只能将Nodes添加到文档中,除非您正在操作另一个元素的innerHTML
,否则不能将一些字符串放在DOM中作为DOM元素进行解析。 我建议包装#CONTENT
元素:
$('#CONTENT').wrap('');
结果如下:
Page Content Here