以下是我遇到问题的jQuery脚本:
$(document).ready(function(){
$("li").click(function(){
$(".active").removeClass("active")
$(this).addClass("active")
});
});
脚本应该使您所在的链接/页面的背景颜色 通过使用为类(。)激活的css激活为橙色 该脚本应从活动的链接中删除活动的类,并将该类添加到单击的链接。
关于脚本应如何执行此操作: 如果单击li,那么具有活动类的东西将删除它的类, 比点击的东西(这个)会让课程活跃起来。 我用过这个,但似乎不起作用
答案 0 :(得分:1)
我不知道它是否是复制粘贴错误,但你缺少分号:
$(document).ready(function(){
$("li").click(function(){
$(".active").removeClass("active");
$(this).addClass("active");
});
});
更新:根据我对此回复的评论,我觉得我应该补充一点,因为代码全部在一行,我说缺少分号。如果不是这种情况,则分号不会解决问题。话虽如此,上面的代码没有其他问题,所以错误必须在页面上的其他地方没有提供足够的信息来解决它。
答案 1 :(得分:0)
Try this:
<强> JS 强>
$(document).ready(function(){
$("li").click(function(){
$(this).parent("ul").find("li").removeClass('active');
$(this).addClass("active");
});
});
另外,不要忘记在行尾添加;
。
答案 2 :(得分:0)
我不是jQuery专家,但是,如果我理解你的问题,这应该是......它确实对我有用:
$('li').each(function(){
$(this).click(function(){
DeselectCurrent();
$(this).addClass("active");
});
});
var DeselectCurrent = function() {
$('li').each(function(){
var attr = $(this).attr('class');
if (typeof attr !== 'undefined' && attr !== false) {
$(this).removeClass("active");
}
});
};
是的,我认为它有点笨拙,并不像它应该的那样有效,但它可以解决你想要做的事情。
jsfiddle示例
答案 3 :(得分:-1)
您的代码应如下所示:
$(function () {
$("li").click(function () {
$(".active").removeClass("active");
$(this).addClass("active");
});
});
如果我理解你要做什么,那么这应该有用。
我确实建议你把问题写得更好一些,因为乍看起来有点难以理解。此外,在询问javascript / jQuery时,提供jsFiddle通常是一个不错的选择。