js,jquery获取节点以及内容和属性

JS获取DOM元素的方法:

document.getElementById('id');                  通过ID获取
document.getElementsByName('name');             通过name属性
document.getElementsByTagName('div');           通过标签名
document.getElementsByClassName('classname');   通过类名
document.querySelector('.animated');            通过选择器获取一个元素
document.querySelectorAll('.animated');         通过选择器获取一组元素
document.documentElement                        获取html的方法document.documentElement是专门获取html这个标签的
document.body                                   获取body的方法document.body是专门获取body这个标签的。   
  • 所有获取DOM对象的方法中,只有getElementById()和querySelector()这两个方法直接返回的DOM对象本身,可直接为其绑定事件。
  • getElementXXX类型的方法,除了通过Id获取元素,其他都返回一个集合,如果需要取到具体的DOM元素,需要加索引,如:document.getElementsByClassName(“box”)[0] =>获取class为box的所有元素中的第一个DOM元素。

querySelector()与querySelectorAll()两者的联系与区别:

  • 联系: 两者括号中的取值都是选择器
  • 区别: 当有多个class相同的元素时,使用querySelector()方法只能获取到第一个class为box的元素,而querySelectorAll()获取到了所有class为box的元素集合。

原生javascript方法:

var a = document.getElementById(“dom”);通过id获取到该节点
del_space(a);清理空格
var b = a.childNodes;获取a的全部子节点;
var c = a.parentNode;获取a的父节点;
var d = a.nextSibling;获取a的下一个兄弟节点
var e = a.previousSibling;获取a的上一个兄弟节点
var f = a.firstChild;获取a的第一个子节点
var g = a.lastChild;获取a的最后一个子节点

jQuery方法:

jQuery.parent(expr) ;找父元素
jQuery.parents(expr) ;找到所有祖先元素,不限于父元素
jQuery.children(expr) ;查找所有子元素,只会找到直接的孩子节点,不会返回所有子孙
jQuery.contents() ;查找下面的所有内容,包括节点和文本.
jQuery.prev() ;查找上一个兄弟节点,不是所有的兄弟节点
jQuery.prevAll() ;查找所有之前的兄弟节点
jQuery.next() ;查找下一个兄弟节点,不是所有的兄弟节
jQuery.nextAll() ;查找所有之后的兄弟节点
jQuery.siblings() ;查找兄弟节点,不分前后
jQuery.find(expr);
$ (“p”).find(“span”)是从元素开始找,等于$(“p span”)
跟jQuery.filter(expr)完全不一样而jQuery.find()的返回结果,不会有初始集中筛选出一部分,而jQuery.find()的返回结果,不会有初始集合中的内容,
jQuery.filter(expr);是从初始的jQuery对象集合中筛选出一部分

内容和属性值

js获取text、html、属性值、value的方法
document.getElementById("test").innerText;
document.getElementById("test").innerHTML;
document.getElementById("test").id;
document.getElementById("test1").value;
jQuery获取text、html、属性值、value的方法
$("#test").text()或者$("#test").innerText
$("#test").html()或者$("#test").innerHTML
$("#test").attr("id")
$("#test").attr("value")或者$("#test1").val()或者$("#test1").value

结果对比

html:
    <p id="test">这是段落中的 <b>粗体</b> 文本。</p>
js:
js与jQuery,text与innerText获取
  $("#btn10").click(function(){
    alert("Text: " + $("#test").text());  
    <!--结果   Text: 这是段落中的 粗体 文本。-->
  });
    $("#btn11").click(function(){
    alert("Text: " + $("#test").innerText); 
     <!--结果   Text: undefined。-->
  });
    $("#btn12").click(function(){
    alert("Text: " + document.getElementById("test").innerTEXT);  
     <!--结果   Text: test-->
    });
js与jQuery,html与innerHTML获取
    $("#btn20").click(function(){
    alert("HTML: " + $("#test").html());  
    <!--结果   HTML: 这是段落中的 <b>粗体</b> 文本。 -->
  });
  $("#btn21").click(function(){
    alert("HTML: " + $("#test").innerHTML); 
     <!--结果   HTML: undefined -->
  });
     $("#btn22").click(function(){
    alert("HTML: " + document.getElementById("test").innerHTML); 
     <!--结果  HTML: 这是段落中的 <b>粗体</b> 文本。 -->
  });
js与jQuery,属性值获取
     $("#btn30").click(function(){
    alert("id: " + document.getElementById("test").id);  
    <!--结果   id: test -->
  });
    $("#btn31").click(function(){
    alert("id: " + $("#test").attr("id"));  
    <!--结果   id: test -->    
  });
html:
   <input id='test1' value='aaa' class='test'>
js与jQuery,value获取
      $("#btn40").click(function(){
    alert("value: " + document.getElementById("test1").value);  
    <!--结果   value: aaa -->
  });
    $("#btn41").click(function(){
    alert("value: " + $("#test1").val());  
    <!--结果   value: aaa --> 
    val()只能用于input元素的value值获取
  });
    $("#btn42").click(function(){
    alert("value: " + $("#test1").attr("value"));  
    <!--结果  value: aaa -->
  });
  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值