问答详情
源自:3-3 innerHTML 属性

innerHTML 输出顺序是怎么理解的,谁帮忙说下

<!DOCTYPE html>
<html>
<head>
	<title>innerHTML</title>
	<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
</head>
<body>
<p id=con>Hello World</p>
<script type="text/javascript">
var mycon=document.getElementById("con");
document.write("p标签原始内容:"+mycon.innerHTML+"<br>");
mycon.innerHTML="NEW text!";
document.write("p标签修改内容;"+mycon.innerHTML);
</script>
</body>
</html>

这短代码输出:

NEW text!

p标签原始内容:Hello World
p标签修改内容;NEW text!

为什么“NEW text”会先输出?这种顺序是怎么理解的  谁邦我讲解下,谢谢


提问者:qq_浅浪_03416697 2016-07-10 14:40

个回答

  • qq_我爱喝可乐_03656276
    2016-07-15 11:11:27

    看了一堆还是不懂

  • 野生码农在线co腚
    2016-07-11 21:10:18

    上面的说的都对,但还有一点 <p id=con>Hello World</p>  id="con"  加引号,单双都行.

  • 慕粉3591791
    2016-07-11 10:05:27

    其实他是先显示Hello World,然后在一瞬间覆盖成了NEW text!,你可以把它的后面的注释掉就可以看到。

  • llo蛋蛋oll
    2016-07-11 09:36:42

    页面加载的时候你的js代码就已经执行完了,所以文本显示自然是你已经修改过的。

    你可以给修改内容的js代码放到一个click函数中,点击文本去触发,这样就会看到文本的修改

  • 上蒼手
    2016-07-10 19:42:24

    浏览器跑JS代码运行太快,人眼是看不出变化的

  • 慕圣8800280
    2016-07-10 15:35:59

    应该先显示修改的内容在显示以前的内容吧

  • qq_LemonTree_223358696
    2016-07-10 15:35:15

    • Hello World修改成NEW text!后,当然浏览器显示也会修改

    • 初始显示是Hello World

    • 修改后显示就是NEW text!

    • document只是告诉你它的变化


  • weibo_李大仁又遇到了程又青_03627734
    2016-07-10 15:27:54

    这段代码本来应该依次输出    Hello world    //<p>中文本   

                                        p标签原始内容:Hello World

                                          p标签修改内容;NEW text!

    但是因为后来  mycon.innerHTML="NEW text!";把<p>中文本改了

    所以浏览器显示出来的结果就是

                                                NEW text!

                                                p标签原始内容:Hello World
                                                p标签修改内容;NEW text!

                                     

  • channel_ho
    2016-07-10 15:18:39

    同问!