我已经构建了一个<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>");
答案 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>
。