关于创建节点与添加节点的问题

关于创建节点与添加节点的问题

不知道是不是课程更新了顺序变换的原因 dom听得感觉有些基础听不懂 便在网上查询了资料 可还是有疑惑的地方 


我不太理解 在JS中 创建的节点不会添加到 节点树中(我所认为节点树便是js所作用的html文档?)

那此时创建的节点保存在哪个位置呢 

并且为什么课程中 创建了一个article的对象节点过后 老版本的IE就可以识别HTML中的article标签了呢

关键是 创建的节点 与html文档之间的关系与联系 我不是特别清楚 想问一下老师

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕夭夭 2019-03-31 16:17:25

你好同学,解答如下:

  1. js创建的节点,只要你使用js添加到页面中 ,那么它就加入到节点树了。节点树就是文档对象模型,它是在打开页面的时候生成的一个结构树,当你使用js添加了某一个节点,这个节点就被插入到节点树中,但是它不会加入到html文档中。因为html文档是你在html页面中实实在在写下的代码,使用js添加的节点是不可能自己跑了html代码中去的哦。如下:

    http://img1.sycdn.imooc.com//climg/5ca073d4000138d304690096.jpg

    所以节点树是一个很抽象的概念,只有页面渲染时才会把html文档中的所有标签元素生成一个节点树,只要页面打开后 执行了js代码,js添加的节点就会保存在节点树。

  2. 关于使用js创建html5标签兼容性 ,属于一个很底层的原理。对于同学现阶段,理解起来不是很容易,目前可以简单的理解为 ,如果在html中写article,那么渲染时 ,会作为一个html5标签,所以不能识别 。使用document.createElement()的方式创建新的标签 ,就像一个自定义的一个标签,所以可以在ie中识别。当然 ,只要会用这个方法就行,并不需要知道它的底层原理 ,同学在以后知识掌握的深入,有兴趣的话可以研究一下哦

  3.  创建的节点 与html文档没有什么关系 ,只有页面在浏览器中渲染生成节点树后 ,你使用js加入的节点就会变成节点树的一部分了。所以js操作的是html文档生成的节点树。

    祝学习愉快 ,望采纳。

  • 提问者 WHIPLASH_z #1
    谢谢老师 您的回答每次都是最高效的 THX
    2019-03-31 17:54:58
  • 提问者 WHIPLASH_z #2
    谢谢老师 您的回答每次都是最高效的 THX
    2019-03-31 17:54:59
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师