js获取子元素

在原生js里获取子元素childNodes ,但是在一些浏览器会把空格当成子元素

html

html:
2
1
Js: var $ = function(o){ //获取元素函数 return document.querySelector(o); } console.log($(".box").childNodes); //获取.box下面的子元素

在这里只有两个子元素,但是在一些浏览器里它就变成5个子元素

js获取子元素_第1张图片

在这个浏览器里会把文本和空格都当初一个子元素,这样你会想到把.box下面的空格和text删除就好,没错,接下来删除这些元素就可以了


//第一种方法:
var box  = $(".box");
var box_child = $(".box").childNodes;

for(var i = 0; i

js获取子元素_第2张图片

这样就完美的获取到正确的子元素了

上面是原生js获取子元素,在jq里可以直接使用  

$(".box").children() //直接获取子元素,不会出现原生js里的问题

 

你可能感兴趣的:(js)