左边例子:第一行显示问题

来源:3-3 innerHTML 属性

passionfoure

2015-02-10 21:26

按照从上向下执行的顺序,<p>标签是先执行的,为什么不是显示Hello World!。

如果是由于mycon.innerHTML="New text!",导致<P>标签内容更新为New text!,我们肉眼看不到变化的过程的话。那为什么document.write("原标题:"+mycon.innerHTML+"<br>")显示的结果也应该由更新变化为New text!

如果这样说的话,就应该是:

New text!

P标签原始内容:New text!

P标签修改后的内容:New text!

PS:看到有很多问这个问题的,其中有一个回答说在<P>标签之后设置一段时间后在执行JS,这样能看到<P>标签的变化。是这样么?假如是的话,为什么更新<P>标签,而不更新第一个document.write("原标题:"+mycon.innerHTML+"<br>")?

望高手解答!!!


写回答 关注

2回答

  • 康振宁
    2015-02-11 14:31:44
    已采纳

    是这样的,你都说了程序执行是按从上向下的执行顺序了,那么,在示例中肯定是先执行P标签,然后是script标签,在执行到script标签中时,会先执行第一句话获取元素p,再执行第二句话,将p元素中的内容输出。然后在用.innerHTML改变P元素中的内容,然后在去输出改变后的P元素中的内容

    yoyomi...

    可以理解成程序在执行第二句话("原标题:"+mycon.innerHTML+"<br>")中的mycon.innerHTML时,mycon.innerHTML还没有改变P标签元素,所以它才显示的是原标签内容吗?

    2015-02-27 16:22:00

    共 2 条回复 >

  • ThinkSummer
    2015-02-11 22:11:41

    正好我也有这样的疑问

JavaScript入门篇

JavaScript做为一名Web工程师的必备技术,本教程让您快速入门

739817 学习 · 9566 问题

查看课程

相似问题