javascript - activeElement 相对于父元素的子元素编号

标签 javascript

vanilla JS(即不是 JQuery 等)中是否有函数来确定 activeElement 的子编号?

我目前正在使用这段代码,但我更愿意使用 selCell = document.activeElement.childNumber;(例如)而不是循环父级:

for(var j = 0; cell = document.activeElement.parentNode.cells[j]; j++)
    if(cell == document.activeElement)
        selCell = j;

如果需要任何说明(例如 HTML 上下文),尽管提问!

非常感谢!

最佳答案

表格单元格保留自己的索引...

selCell = document.activeElement.cellIndex;

对于其他元素类型,一个常见的解决方案是从当前元素开始,遍历之前的兄弟元素,每次遇到元素时递增计数器。

var i = 0;

while(elem = elem.previousSibling)
    if (elem.nodeType === 1)
        i++;

关于javascript - activeElement 相对于父元素的子元素编号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11724959/

相关文章:

javascript - 如何防止Google抓取javascript中的部分url?

javascript - 更改 setTimeout 上的匿名函数的范围会导致奇怪的警告

javascript - SPA如何在OAuth2隐式流程中提取访问 token

javascript - 从 underscore.js 中的数组返回一系列值

javascript - 使用 Mapbox 或 Leaflet 突出显示多边形

javascript - 如何在 Javascript 中解析 CSV

javascript - 在另一个选择实例中选择时禁用选择选项值

javascript - jQuery jslint var 在定义之前就被使用了

javascript - 根据初始浏览器请求将 JWT token 发送到服务器(使用本地存储)

javascript - 图片加载不正确