+ -
当前位置:首页 → 问答吧 → 怎么在一个节点后加一段文本节点,要支持html

怎么在一个节点后加一段文本节点,要支持html

时间:2011-11-07

来源:互联网

HTML code

<!doctype html>
<html>
    <head>
        <meta charset="gb2312" />
        <title></title>
        <style>
        </style>
    </head>
    <body>
        <div id="a">a</div>
        <div id="b">b</div>
        <div id="c">c</div>
        <div id="d">d</div>
        <script>
            function $(o){return document.getElementById(o)}
            
            var s = '<span style="color:red">123</span>';
            
            $('a').nextSibling.nodeValue = s;
            
        </script>
    </body>
</html>





上面的代码不行,,ff下 可以添加 &lt;span style="color:red"&gt;123&lt;/span&gt; 
ie下没效果

我想让添加的内容是真正的html,而不是 被转义了的。

还有 通过 createTextNode 也不行,求高手。。。

作者: zgzglike   发布时间: 2011-11-07

$('a').nextSibling.innerHTML = s;
这样呢。

作者: licip   发布时间: 2011-11-07

引用 1 楼 licip 的回复:
$('a').nextSibling.innerHTML = s;
这样呢。


师兄 不行。你没测试吧

作者: zgzglike   发布时间: 2011-11-07

JScript code

        <script>
            function $(o) { return document.getElementById(o) }
            var span = document.createElement("span");
            span.setAttribute("style", "color:red");
            span.innerHTML = "123";
            document.body.insertBefore(span, $("b"));            
        </script>

作者: MadEric   发布时间: 2011-11-07

火狐的话用楼上的,IE下可以用

var el = document.getElementById("a");
el.insertAdjacentHTML("afterEnd", "<span style='color'>11111</span>")

作者: liangws   发布时间: 2011-11-07

上面都不是很准确,
我想实现一个 外部前置str的函数
HTML code

<!doctype html>
<html>
    <head>
        <meta charset="gb2312" />
        <title></title>
        <style>
        </style>
    </head>
    <body>
        <div id="a">a</div>
        <div id="b">b</div>
        <div id="c">c</div>
        <div id="d">d</div>
        <script>
            function $(o){return document.getElementById(o)}
            
            function before( elem, str ){
                elem.previousSibling.nodeValue = str;
            }
            
            var s = '<span style="color:red">123</span>';
            
            before( $('c'), s )
            before( $('d'), s )
        </script>
    </body>
</html>


作者: zgzglike   发布时间: 2011-11-07