原生JS与jQuery获取节点的方法

JavaScript08

原生JS与jQuery获取节点的方法,第1张

  首先我们来介绍一下DOM中元素与节点间的关系:页面中所有内容都是节点[包括元素,属性,文本],所以节点是包括元素的。

  以下是节点的三个属性:

  若是火狐和chrome浏览器上述方法不存在兼容问题,而若是在IE8浏览器中后四组内容只能获取元素,无法获取文本或属性。即原获取节点方法-->取元素;原获取元素方法-->undefined。

  jQuery中是以方法的形式进行调用,同时都是用来获取元素:

通过鼠标选中事件获取点击的物体e,查找此物体e.parent属性,我是scene.add()添加的,判定e.parent !== scene,不相等(e = e.parent)就接着向上找,直到找到相等的时候此时的e就是整个外部模型。 获取外部模型代码 letself=thisfunctionget_parent(e){if(e.parent&&e.parent!==self.scene){get_parent(e.parent)}else{self.selectMesh=e}}get_parent(intersect.object)console.log(this.selectMesh)获取外部模型所有子节点方法 threejs本身封装的traverse方法: this.selectMesh.traverse(function(e){if(e.material)