为了账号安全,请及时绑定邮箱和手机立即绑定

区别是什么那?

$(this).parents(".ex").hide(); 和
$(this).parentNode(".ex").hide();还有$(this).parentNode.hide();的区别是什么那?刚开始学习,$(this).parents(".ex").hide()可以实现对类名为ex的隐藏功能,但是第二个和第三个就不行,为什么

正在回答

2 回答

主要的区别就是jQuery对象和原生DOM对象的区别

jQuery的.parent()函数是只往父级找一层

jQuery的.parents()函数是往父级找多层,一直找到body标签

parentNode是HTML DOM parentNode 属性,不是jQuery方法

$(this)是jQuery对象,无法直接使用DOM对象的方法及属性,需要转成DOM对象,转成DOM对象了之后也不能使用jQuery的方法了,改为:

$(this).get(0).parentNode.style.display="none";

(根据我自己的理解在网上查了解释,希望对你有帮助,对不对需要你自己试一下)

0 回复 有任何疑惑可以回复我~
#1

苏子沫 提问者

非常感谢!
2016-11-17 回复 有任何疑惑可以回复我~

$(this).parentNode(".ex").hide(); 返回的是.ex节点的父节点的节点名 例如<ul><li>Coffee</li><li>Tea</li></ul>  

var x=document.getElementById("demo");  
var y=document.getElementsByTagName("LI")[0];
x.innerHTML=y.parentNode.nodeName;
}返回的是ul

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

区别是什么那?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信