在两个HTML注释行之间插入内容

时间:2013-10-15 13:49:10

标签: javascript jquery html

比如说您有以下设置:

<div class="blah"><!--start--><!-- stop --></div>

我想知道如何在“开始”和之间插入内容。 “停止”HTML评论行?

我发现这个link有点用处,我设法让我的内容加载,但它会继续将其加载到“停止”评论之下。

有什么想法吗?

3 个答案:

答案 0 :(得分:4)

 $('.blah').contents().filter(function () {
     return this.nodeType == 8;
 }).first().after('test');

<强> jsFiddle example

返回:

<div class="blah">
    <!--start-->test<!-- stop -->
</div>

答案 1 :(得分:0)

好吧,我会硬编码:

var content="Insert me in:)";
[].forEach.call(document.getElementsByClassName('blah'),function(e){
    e.innerHTML=e.innerHTML.split('start--><!--stop')[0]+"start-->"
               +content+
               "<!--stop"+e.innerHTML.split('start--><!--stop')[1];
});

答案 2 :(得分:0)

这将在<!--start-->

之后插入您的内容
var newContent = "<strong>New!</strong>",
    mergedContent = $('.blah').html().replace("<!--start-->","<!--start-->"+newContent);
$('.blah').html(mergedContent);