实时搜索: js第几个子元素

js第几个子元素

782条评论 4385人喜欢 4983次阅读 691人点赞
FF下用document.getElementById("slide_time").childNodes[0],childNodes[0] 找不到第二层的div; 怎么获取到inner
<div id="slide_time"><div><div class="inner"></div></div></div> , 比如:<div id="aaa">
<p id="p1">11</p>
<p id="p2">22</p>
&...

JS 获取 子元素的子元素: document.getElementById("slide_time").children[0].children[0].className
document.getElementById("slide_time").childNodes[0].childNodes[0].className

javascript 获取子元素有多少个: <script>
window.onload = function () {
var myDiv = document.getElementById("myDiv");//获取父级div
var div_s = myDiv.getElementsByTagName("div");//获取父级下的div

alert(div_s.length); //得到子级div的长度,也就子级div的个数

for(var i = 0;i < div_s.length;i++){

}//for循环应用
}
</script>
<body>
<div id="myDiv" >
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
</div>
</body>
你看看这个是不是你想要的

JS只有childrenNodes吗,没有childrenNOde?那想访问子元素怎么写: 在获取子元素之前js肯定不知道总共有多少个子元素,所以子元素都是以元素集合的形式出现的(即使子元素只有一个甚至没有),然后再从中枚举出每个子元素,比如:

elem.childNodes[0] //这是第一个子元素
elem.childNodes[1] //这是第二个子元素,依此类推
此外,还可以使用children,它也是个集合,用法一样:
elem.children[0] //这是第一个子元素
elem.children[1] //这是第二个子元素,依此类推
childNodes和children的区别在于,前者会把文本元素(含回车、空格等)也作为子元素,后这则只把标签元素作为子元素
此外,如果知道子元素的ID、Name、Class或者标签名,也可以直接获取子元素,比如:
elem.getElementById("abc") //获取id为abc的子元素(ID具有唯一性,所以它可以直接获取)
elem.getElementsByName("xxx")[0] //获取name属性为xxx的第一个子元素(name属性允许重名,所以它是个集合)
elem.getElementsByClassName("hehe")[0] //获取class为hehe的第一个子元素(class属性也是可以重名的)
elem.getElementsByTagName("a")[0] //获取第一个a标签子元素

如何使用 js 给 中的第一个元素添加一个 class。: <div id="d">
<a>111</a>
<a>222</a>
</div>
<script>
docuemtn.getElementById("d").getElementByTagName("a")[0].setAttribute("class","class名称");
</script>

你试试这样行不行

JS的第二个节点怎么表示?为啥只有第一个子节点,最后一个子节点!: <!DOCTYPE html>
<html>
  <head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>
RunJS 演示代码
</title>

  </head>
<body>
    <div id="div">
<a>
11
</a>
<a>
22
</a>
<a>
33
</a>
</div>
<script>
var a2 = div.children[1];
console.log(a2.innerHTML);
</script>
  </body>
</html>

javascript如何在div的后面添加一个其他的元素: //1、首先获取div的父节点
//2、创建一个新节点
//3、将新节点添加到div节点后面
//具体操作如下:
var divs = document.getElementsByTagName("DIV");//获取页面中所有div
for(var i=0; i<divs.length; i++) {  
    var div = divs[i];//获取第i个div
    var divParent = div.parentNode;//获取该div的父节点
    var newNode = document.createTextNode("文本节点");//创建文本节点
    var next = div.nextSibling;//获取div的下一个兄弟节点
    //判断兄弟节点是否存在
    if(next) {
        //存在则将新节点插入到div的下一个兄弟节点之前,即div之后
        divParent.insertBefore(newNode,next);
    } else {
        //不存在则直接添加到最后,appendChild默认添加到divParent的最后
        divParent.appendChild(newNode);
    }
}

//以下是一些常用js操作
var textNode = document.createTextNode("xxx");//创建文本节点
var elementNode = document.createElement("p");//创建元素节点(p)
var body = document.getElementsByTagName("body")[0];//获取body节点
body.appendChild(elementNode);//元素节点添加到body节点下,添加在末尾
elementNode.appendChild(textNode);//将文件节点添加到元素节点下
//获取要删除的节点,elementNode.length-1 表示最后一个指定节点(这里表示最后一个p节点)
var delElementNode = elementNode.item(elementNode.length-1);
body.removeChild(delElementNode);//移除指定节点
body.insertBefore(newNode, oldNode);//在body中的oldNode前插入newNode节点
body.replaceChild(newNode, oldNode);//将body中的oldNode替换为newNode节点
//创建一个新的属性
var style = document.createAttribute("style");
//为节点添加新属性
option.attributes.setNamedItem(style);
//设置新属性的值
option.setAttribute("style","color:red");

js怎么复制一个节点并追加: node 是你要复制的
那么var cNode = node.cloneNode(true)就把这个节点克隆了,并赋值给变量cNode
想把这个节点追加到某个元素内, 我假设元素为element
那么element.appendChild(cNode)就可以了

javascript如何为一个节点的子节点添加事件: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
function test(obj){
alert(obj.id);
// alert(obj.parentElement.id)
var parentObj = obj.parentElement;
for(var i=0;i<parentObj.children.length;i++){
if(obj===parentObj.children[i]){
alert(i);
break;
}
}
}
//-->
</SCRIPT>
<BODY>
<div id="aaa">
<p id="p1" onclick="test(this)">11</p>
<p id="p2" onclick="test(this)">22</p>
<p id="p3" onclick="test(this)" >33</p>
<p id="p4" onclick="test(this)">44</p>
</div>
</BODY>
</HTML>

  • 2016海南有几个机场

    顺义临空假日酒店到北京翠微大厦地铁: 公交线路:地铁15号线 → 地铁14号线 → 地铁1号线,全程约40.3公里1、从临空假日酒店步行约610米,到达国展站2、乘坐地铁15号线,经过4站, 到达望京站3、步行约280米,换乘地铁14号线4、乘坐地铁14...

    570条评论 6057人喜欢 3157次阅读 988人点赞
  • mov与avi哪个好

    奥克拉隐形眼镜质量怎么样?: 奥克拉是近年来在全球市场上崛起的隐形眼镜品牌,因其产品配戴时异物感极低,被称为‘无感隐形眼镜'。是一款来自英国的品牌。   其中奥克拉高透氧FW,即奥克拉高透氧延长佩戴型,是奥克拉的旗舰产品,同时也是目前市场上的极品...

    274条评论 3652人喜欢 5680次阅读 376人点赞
  • 蹇读什么

    不能随便透露客户信息用英语怎么说: I can't say, I ain't at liberty to give out no information about our clients. 科恩兄弟的独立电影《老无所依》原句,33分钟43秒,只不过把...

    618条评论 3629人喜欢 4375次阅读 417人点赞
  • multisim万用表在哪

    想戴隐形眼镜: 我也想戴隐形眼镜,四眼仔都想,但是想归想,隐形眼镜对眼睛始终是有伤害的,还是忍耐下戴框子眼镜吧,确实想摘除就去做激光,隐形眼镜治标不治本最不推荐 ...

    797条评论 2720人喜欢 4843次阅读 676人点赞
  • 五十怎么读

    手头上的隐形眼镜用完了,想换换牌子。求推荐!: 我很喜欢库博光学CooperVision的隐形眼镜,它是国际三大隐形眼镜品牌之一,。他们家的倍明视TM日抛隐形眼镜,含水量高达55%,一整天戴下来都不会觉得眼睛有什么干涩的感觉,很舒适。而且还不用像传统的隐形眼镜那样...

    999条评论 3998人喜欢 5982次阅读 469人点赞
  • 2015超模冠军是谁

    北京翠微大厦周末几点开始营业: 您好,北京翠微大厦上午10点开门,不用去太早呦,早了没开门的,呵呵! ...

    551条评论 2416人喜欢 4193次阅读 469人点赞
  • 昆明有几个帮派

    大连市开发区的大连艺术学院在哪?: 坐公交去轻轨站 ,在金家街轻轨站坐 ,到开发区站下,就两趟线,都到开发区。 然后坐7路公交 。 或者直接去开发区的安盛坐返程 10元一位 到大学城 说去艺术学院就行。 ...

    802条评论 2479人喜欢 3249次阅读 822人点赞