我正在使用jquery 1.5,我遇到了添加和删除类函数的问题。以下是我的代码。
我正在创建一个具有普通,悬停和活动状态的导航。我想要添加和删除类的活动状态。
$(".class").hover(function(){
$(this).css("background-color", "#666).css("color", "yellow");
), function(){
$(this).css("background-img", url(image).css("color","#fff");
).live('click', function(){
if($("ul.me li").hasClass("current")){
$("ul.me li").removeClass("current");
$(this).addClass("current");
}
});
<ul class="me">
<li class="current"> item1 </li>
<li> item1 </li>
<li> item1 </li>
</ul>
我是否正确绑定了它?
答案 0 :(得分:0)
您可能需要使用$("ul.me li").removeClass("current")
代替$("ul#me li").removeClass("current")
$("selector").live('click', function(){
if($("ul.me li").hasClass("current")){
$("ul.me li").removeClass("current");
$(this).addClass("current");
}
});
答案 1 :(得分:0)
你缺少选择器: -
$("ul.me li").live('click', function(){
if($("ul.me li").hasClass("current")){
$("ul#me li").removeClass("current");
$(this).addClass("current");
}
});
答案 2 :(得分:0)
您的脚本中的内容过于复杂。您需要阅读.css的文档。您无法通过$(".class")
引用元素。如果要引用元素类型,请仅使用不包含.
或#
$("ul")
的名称$(".me")
。如果您想引用类,请使用$("#idName")
和{{1}}作为ID。单个css命令可以更改css值数组。正如我之前所说,请浏览css文档。 jQuery 1.6和jsfiddle一样接近。这是一个小提琴链接。请参阅脚本并根据您的要求修改css值。
注意:如果要在li中添加一个类并在悬停时删除,请在css中而不是在js中为类添加样式。它更便宜。
答案 3 :(得分:-1)
只是.live没有意义。你需要将.live设置为jquery对象,如$('selector')