jQuery .click()无法运行

时间:2010-08-17 01:54:21

标签: jquery click

我已经构建了一个<ul>列表,并且正在使用jQuery函数填充<li id="subsitem">。我正在尝试构建一个单击函数,以便每当单击其中一个<li>时,它就会消失。我正在使用slideUp()功能。

这是我的代码:

$("#subsitem").click(function() {
  // Act on the event
  $(this).slideUp();
}); 

这不起作用,但当我将其更改为

$("li").click(function() {
  // Act on the event
  $(this).slideUp();
}); 

它有效,但唯一的问题是它适用于我的所有<li>。有人提示吗?


更新

以下是.each()

中使用的代码
$("#subs").append("<li><a href='#' class='subsitem'><div class='favicon'><img src='icon.png' width='16' height='16'></div>title</a></li>");

3 个答案:

答案 0 :(得分:4)

问题是第一个是通过ID识别,它应该是唯一的。您可以将其更改为一个类,并将该类添加到每个li,以使其工作。

$(".subitem").click(function() {
    // Act on the event
    $(this).slideUp();
}); 

答案 1 :(得分:2)

好的使用了jquery irc频道我设法得到了我正在寻找的答案。

我需要使用.live()函数。这就是我的代码现在的样子

$("#subsitem").live('click',function(){
$(this).parent().slideUp();});

答案 2 :(得分:1)

做类似的事情:

$("#subsitem").click(function(){
    $(this).parent().slideUp();
});

将其绑定到点击的<li>的父<a>