V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
aglsv
V2EX  ›  JavaScript

关于插入 div 的问题

  •  
  •   aglsv · 114 天前 · 1012 次点击
    这是一个创建于 114 天前的主题,其中的信息可能已经有所发展或是发生改变。
    dom_exeStartPrev.outerHTML = dom_exeStartPrev.outerHTML + div.innerHTML
    

    我想让 div 里面的元素全部添加到dom_exeStartPrev的后面,但是按照我上面写的,最后 console 出来的dom_exeStartPrev还是原来的,并没有加上 div 里面的元素,请问这个如何解决

    Twinkle
        1
    Twinkle  
       114 天前
    dom_exeStartPrev.parentNode.insertBefore(div, dom_exeStartPrev.nextSibling)
    h503mc
        2
    h503mc  
       114 天前 via Android
    试试 dom_exeStartPrev.insertAdjacentElement("afterend",div)

    如果是要让 div 在 dom_exeStartPrev 底下,那么就把 afterend 换成 beforeend

    参见 https://developer.mozilla.org/zh-CN/docs/Web/API/Element/insertAdjacentElement

    ps:你应该打印 dom_exeStartPrev.parentNode 才对
    aglsv
        3
    aglsv  
    OP
       114 天前
    @Twinkle 我这个是只需要 div 里面的元素,而且我之前这么写如果 dom_exeStartPrev 是最后一个元素的话他会报错
    aglsv
        4
    aglsv  
    OP
       114 天前
    @h503mc 我只需要 div 里面的的内容,不需要 div 这个标签,需要它里面的子元素,我之前也使用这个方法来着,但是因为不知道该如何只插入 div 里面的内容,所以就换成了这个
    xingyuc
        5
    xingyuc  
       114 天前
    childrenElement ?
    h503mc
        6
    h503mc  
       114 天前 via Android
    [...div.children].forEach(element=>dom_exeStartPrev.insertAdjacentElement("afterend",element));

    其他同 #2
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2327 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 14:56 · PVG 22:56 · LAX 06:56 · JFK 09:56
    ♥ Do have faith in what you're doing.