Insert sibling node in JS

前端 未结 2 2002
栀梦
栀梦 2020-12-30 00:37

So I have a div with some pre tags in it, like so:

1


        
相关标签:
2条回答
  • 2020-12-30 01:06

    Here is how I would do that:

    JS

    var container = document.getElementById('editor'),
        firstChild = container.childNodes[1];
    if (container && firstChild) {
        var newPre = document.createElement('pre');
        newPre.setAttribute("contentEditable", "true");
        newPre.innerHTML = "boom";  
        firstChild.parentNode.insertBefore(newPre, firstChild.nextSibling);    
    }
    

    jsfiddle: http://jsfiddle.net/bZGEZ/

    0 讨论(0)
  • 2020-12-30 01:10

    You could also insert a new sibling using insertAdjacentElement or insertAdjacentHTML; both of which take the options beforebegin, beforeend, afterbegin and afterend.

    Example:

    var container = document.getElementById('editor'),
    firstChild = container.childNodes[1];
    
    var newPre = document.createElement('pre');
    newPre.setAttribute("contentEditable", "true");
    newPre.innerHTML = "boom";  
    firstChild.insertAdjacentElement("afterend", newPre);
    
    0 讨论(0)
提交回复
热议问题