我需要jQuery的一些帮助,我真的希望我能在这里找到一些帮助。当我在隐藏的项目上使用我的导航箭头(下一个/上一个)时,我希望父项保持高亮显示。对于第一个项目的家,它的工作原理,但其余的不是。有人可以帮我吗?
<div id="cssmenu">
<ul id="list">
<li><a href="#home">Home</a></li>
<ul class="hide"><li><a href="#home2"></a></li></ul>
<li><a href="#newsletter">Newsletter</a></li>
... </div>
我试图弄清楚:
$(document).ready(function(){
$('#cssmenu').find('li.active').removeClass('active');
//adding the state for this parent menu
$(this).parents('li').addClass('active');
});
我管理我的下一个和上一个按钮:
$( "#next, #prev" ).click( function ( event ) {
var
positionActiveClass = menu.find( "> li.active" ).index(),
menuLength = menu.find( "> li" ).length - 1,
buttonId = $( this ).attr( "id" );
if ( buttonId === "next" ) {
if ( positionActiveClass === ( menuLength ) ) {
newElementActiveClass = menu.find( "li" ).eq( 0 );
newPositionActiveClass = newElementActiveClass.find( "> a" ).attr( "href" );
animation( newPositionActiveClass );
} else {
newElementActiveClass = menu.find( "li" ).eq( positionActiveClass + 1 );
newPositionActiveClass = newElementActiveClass.find( "> a" ).attr( "href" );
animation( newPositionActiveClass );
}
} else {
if ( positionActiveClass === 0 ) {
newElementActiveClass = menu.find( "li" ).eq( menuLength );
newPositionActiveClass = newElementActiveClass.find( "> a" ).attr( "href" );
animation( newPositionActiveClass );
} else {
newElementActiveClass = menu.find( "li" ).eq( positionActiveClass - 1 );
newPositionActiveClass = newElementActiveClass.find( "> a" ).attr( "href" );
animation( newPositionActiveClass );
}
}
event.preventDefault();
} );
答案 0 :(得分:0)
在第一个具有类隐藏的li之后有一个额外的ul。那个有什么用?只需删除那个ul,一切正常。