我正在尝试在我的菜单下添加一个下一个和上一个按钮,这会突出显示我的项目。
当我用菜单上的鼠标光标点击每个部分时,它可以正常工作。我突出了每个项目。
我的问题就像当我们点击下一个或上一个按钮时,我的菜单上没有高亮显示项目。
我的Jquery代码出了什么问题?
这是我的Fiddle
<div id="cssmenu">
<ul id="list">
<li class='active'><a id="testSlide1" href='#'><span>Home</span></a></li>
<li><a id="testSlide2" href='#'><span>Products</span></a></li>
<li><a id="testSlide3" href='#'><span>About</span></a></li>
<li><a id="testSlide4" href='#'><span>Contact</span></a></li>
</ul>
</div>
<nav class="da-arrows">
<button id="PrevButton">Previous</button>
<button id="NextButton">Next</button>
</nav>
<script>
$("a").click(function(){
// If this isn't already active
if (!$(this).parent().hasClass("active")) {
// Remove the class from anything that is active
$("li.active").removeClass("active");
// And make this active
$(this).parent().addClass("active");
}
});
$('a').click(function(e){
e.stopPropagation();
});
var list = $("#list");
var li = list.children();
var lengthMinusOne = li.length - 1;
var index = 0;
var num = $("#list li").length;
var prevLi = $(li[0]).hasClass("active");
$("#NextButton").click(function(){
index++;
if (index > lengthMinusOne) index = 0;
prevLi.removeClass("active");
prevLi = $(li[index]).addClass("active");
});
$("#PrevButton").click(function(){
index--;
if (index < 0) index = lengthMinusOne;
prevLi.removeClass("active");
prevLi = $(li[index]).addClass("active");
});
</script>
我该怎么做?
答案 0 :(得分:0)
$("#NextButton").click(function(){
index++;
if (index > lengthMinusOne) index = 0;
prevLi.removeClass("active");
prevLi = $(li[index]).addClass("active");
});
演示: