根据div的id获取该div在父元素中的索引?

<div id = "aaa">
<div></div>
<div></div>
<div id = "a"></div>
<div></div>
<div></div>
<div></div>
</div>

id为a的索引为2,这个2是怎么获得的。
给上代码 多谢

// 测试代码
window.onload = function(){
// 弹出结果
alert(index('a'))
}

function index(id){
// 根据参数id取得该节点
var obj = document.getElementById(id);
// 获取该节点的父节点
var p = obj.parentNode;
// 取得父节点下的所有节点
var tags = p.getElementsByTagName('*');
// 在父节点的所有子节点中查找自己所在的位置
for(var i=0,len=tags.length;i<len;i++){
// 找到节点,返回下标
if(tags[i] == obj){
return i;
}
}
// 不在父节点中,返回-1
return -1;
}

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-05-28

可以取得


通过document.getElementsByTagName

详细如下:

var a = document.getElementById("a");
var divs = a.parentNode.getElementsByTagName("div");
for(var i = 0, l = divs.length;i < l; i++ ){
     if(a == divs[i]){
       break;// 这样就可以通过i取到索引,也可以设置一个变量来取i的值
       // 或者写成一个函数
   }
}

追问

我问的那么明白,按照我那个例子给个代码啊

第2个回答  2013-06-04
这两个答案都是对的 , 实验一下本回答被提问者采纳

jq 怎么用子元素获得父元素的index
如果这个不行,就先通过子元素获取父元素的dom对象,然后在$(parent).index()

jquery怎么获取当前元素的父元素
这样:<ul class="parent1"> <li><a href="#" id="item1">jquery获取父节点<\/a><\/li> <li><a href="#">jquery获取父元素<\/a><\/li> <\/ul>

js获取指定id的元素中多个个div以及div中的li
\/\/因为很久没写代码估计有点错误,不过思路是这样,要注意的就是有个方法是获取所有子元素,貌似是childNodes 完全可以分成两个来获取,第一个获取父div的子div,第二个获取子div下的所有li document.getElementById("aa").childNodes()\/\/这样就获取了aa下面所有div 同理获取子div下面的li,手打,如果...

javascript\/jquery怎么判断所点击元素是其父元素中的第几个子元素?
<div class="id"> <span>内容<\/span> <span>内容<\/span> <span>内容<\/span><span>内容<\/span><\/div><script>$(function(){ $('#id span').click(function(){ var ind = $('#id span').index(this)+1;\/\/获取当前点击的span下标 alert(ind)\/\/弹出第几个 })})<\/s...

一个父div一个子div怎样定位两个div让子div跟着父div移动?
<div id="father"><div id="sun"><\/div><\/div>如果是这个层次的话sun是跟随father走的啊,因为是嵌套关系啊,就好比杯子里面有水,总不能杯子走了,水还在原地不动吧,道理是一样的。sun一般情况下总是相对于father来动,father在左侧sun也会到左侧,因为sun在father内部,这个我就不多解释了。

怎么给div设置父元素
1.首先需要把这些层所在的那个公共外层div的属性设置成position。2.其次在把重叠的那些层也都设置position:relative。3.最后设置成z-index:-999,即可完成创建父子层

div父级元素(div父级元素怎么写)
6、在js标签中,创建getfu()函数,在函数内,通过id(box)获得span对象,通过连续使用parent()获得span标签的父级的父级元素对象,再使用prop()方法获得该对象名称。最后,使用alert()方法输出元素名称。一个div如何让子元素决定父元素的宽度希望子元素撑开父级元素可以使用以下两种方法:1、父级元素宽度...

document.getElementById(obj).parentNode.style.display = "";是...
document.getElementById:根据id获取页面dom元素节点 parentNode:获取元素的父元素节点 .style.display:设置元素的display样式 元素display为none为不可见 inline为行内模式 block为块模式 空字符串为默认,比如div默认是block,span默认是inline

div如何定位div里面的div如何定位
相对定位是相对于上一个相对定位的。一般用于浮动定位标签里面,一般跟绝对定位配合使用。浮动定位才是常用的。看例子:以下只说id名代表p绝对定位:position:absolute如果bq1(绝对定位)外面没有p等父标签,bq1会以body为父标签。左边距距body10像素,上边距距body10像素。如果bq4(绝对定位)在bq3(...

js获取父级元素
1、首先创建一个div,里面再创建一个p元素,通过p元素来获取他的父元素div。2、接下来我们用js来获取p元素。3、这样我们就得到p元素,并获得了它的值,看看结果。4、接下来我们就来获取这个p元素的父元素。5、通过parentNode就能得到它的上一级元素了(父元素),同时我们打印了div中的html内容,看看...

相似回答