如何使用jquery查找列表<li>数字?

Raj*_*kar 2 javascript jquery

我想找到<li>用户点击的顺序.例如,

<ul>
    <li id="li1">This is list one</li>
    <li id="li2">This is list Two</li>
    <li id="li3">This is list three</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

当用户点击列表项2时,我必须将该项的id检索为li2.如何实现这一点,PLZ帮助

Gab*_*iel 5

如下所述,有几种方法可以添加事件处理程序..bind.click另一个.您还可以单独使用逻辑创建函数,并在绑定或单击事件附件时引用它.

<script type="text/javascript">
// version 1 with bind
  $(function(){
    $("li").bind("click", function(){alert(this.id);});
  })
</script>

<script type="text/javascript">
// version 2 with click and the separated method
  $(function(){
    $("li").click(listClickHandler);
  })
  function listClickHandler(){
    alert(this.id);
  }
</script>
Run Code Online (Sandbox Code Playgroud)

在动态分配事件处理程序或在页面生命周期的不同点分配处理程序分配时,将处理程序方法与处理程序分配分开是很有意义的.我经常使用bind然后单击的原因是bind可以用于很多不同的事件,所以很容易想象创建一个事件赋值工厂:

<script type="text/javascript">
// version 3, event assignment factory
  function assign(selector, event, method){
    $(selector).bind(event, method);
  }
  $(function(){
    assign(".menu li", "click", listClickHandler);
    assign(".menu li", "mouseover", listHoverHandler);
  })
  function listClickHandler(){...};
  function listHoverHandler(){...};
</script>
Run Code Online (Sandbox Code Playgroud)

希望这比您需要的更多.