javascript - 计算div在div中的位置

标签 javascript numbers position

美好的一天,我需要一些 JS 方面的帮助。
假设我有这个 HTML:

<div>
    <div onclick="countPos()"></div>
    <div onclick="countPos()"></div>
    <div onclick="countPos()"></div>
</div>

当我单击一个 div(在父级 div 内)时,我希望触发一个 JS 函数,该函数将返回该 div 的位置。因此,如果我单击第三个 div - 返回 3,如果我单击第一个 div - 返回 1 等等。 请问我该怎么做?

最佳答案

您需要将当前单击的元素发送到函数,例如

<div onclick="countPos(this)"></div> 

然后在函数中,您可以在父级内部创建元素的数组,然后查找索引。

function countPos(elem){
  var nodeList = Array.prototype.slice.call( elem.parentNode.children );
  var index = nodeList.indexOf( elem ) + 1;
  // do your stuff with index
}

<强> FIDDLE

关于javascript - 计算div在div中的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23239203/

相关文章:

java - 需要帮助在 Java 中不使用 0 的情况下使用随机数 1-10 填充数组

html - 现在如何将顶部 div 与位置顶部 50% 和 translateY(-50%) 对齐

html - CSS3动画div位置导致不可点击区域并且不触发动画

javascript - 根据用户的输入匹配用户并从中选择一个

javascript - Node.js 编译我不需要的文件。它在幕后是如何工作的?

javascript - jquery 未从更改时的 select 语句获取值

javascript - 如何从 event.target 获取 react 元素

添加/减去数字以查找是否可以生成数字的算法?

javascript - 仅在 jquery 中输入数字

cocos2d-iphone - Cocos2d 获取手势位置