获取元素的索引作为相对于父级的子级

获取元素的索引作为相对于父级的子级

假设我有这个标记:

<ul id="wizard">
    <li>Step 1</li>
    <li>Step 2</li></ul>

我有这个jQuery:

$("#wizard li").click(function () {
    // alert index of li relative to ul parent});

li单击该项时,如何获取相对于其父项的子项索引li

例如,当您单击“步骤1”时,将alert弹出一个“0”。


叮当猫咪
浏览 539回答 3
3回答

富国沪深

$("#wizard&nbsp;li").click(function&nbsp;()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;console.log(&nbsp;$(this).index()&nbsp;);});但是,不是为每个列表项附加一个单击处理程序,更好(性能明智)使用delegate它看起来像这样:$("#wizard").delegate('li',&nbsp;'click',&nbsp;function&nbsp;()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;console.log(&nbsp;$(this).index()&nbsp;);});在jQuery 1.7+中,您应该使用on。下面的示例将事件绑定到#wizard元素,就像委托事件一样:$("#wizard").on("click",&nbsp;"li",&nbsp;function()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;console.log(&nbsp;$(this).index()&nbsp;);});

Helenr

就像是:$("ul#wizard&nbsp;li").click(function&nbsp;()&nbsp;{ &nbsp;&nbsp;var&nbsp;index&nbsp;=&nbsp;$("ul#wizard&nbsp;li").index(this); &nbsp;&nbsp;alert("index&nbsp;is:&nbsp;"&nbsp;+&nbsp;index)});

牛魔王的故事

看看这个例子。$("#wizard&nbsp;li").click(function&nbsp;()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;alert($(this).index());&nbsp;//&nbsp;alert&nbsp;index&nbsp;of&nbsp;li&nbsp;relative&nbsp;to&nbsp;ul&nbsp;parent});
打开App,查看更多内容
随时随地看视频慕课网APP