javascript - 获取事件目标的父元素的索引

标签 javascript jquery html css

提供此代码:

$("#myList").on("click", "span", function (event) {
    alert($(this).index());
});

和 HTML:

<ul id="myList">
    <li>item 0 <span>span 0</span></li>
    <li>item 1 <span>span 1</span></li>
    <li>item 2 <span>span 2</span></li>
    <li>item 3 <span>span 3</span></li>
</ul>

如果您单击任何 <span>元素,“0”将始终被提醒。我认为这是因为只有一个 <span>在每个 <li> 内, 所以它总是被赋予 0 的索引。

我想让它做的是返回 <span> 的索引的父级 - 在这种情况下,它将是父级的索引 <li><ul id="myList"> 内. 例如,点击 <span>span 2</span>将提醒“2”。

JSFiddle

最佳答案

要么使用$(this).parent().index()$(this).closest('li').index() .

即使您决定将新元素放入 span 并将事件绑定(bind)到该元素,后者也会提醒 li 的索引。

关于javascript - 获取事件目标的父元素的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30815693/

相关文章:

javascript - 在javascript中获取以英寸为单位的div高度

javascript - 新窗口中的 Angular JS 空 pdf

javascript - 在 Angularjs 中提交后重置表单

javascript - 在输入类型日期中设置日期

jquery - 滚动 spy : how do I get it to work?

html - 试图让 div 粘在另一个居中的 div 的一侧并处于固定位置

python - 如何美化 HTML,使标签属性保留在一行中?

javascript - 将杏仁与 grunt-contrib-requirejs 一起使用

javascript - 禁止使用 AngularJS ng-click 分享到 Tumblr

javascript - 在 ajax 调用后尝试调整表格大小时,Footable 触发器不起作用