Ich habe eine Frage zu Jquery. Wenn ich auf Link1 klicke, das keine ul.children
hat und die Klasse current_page_item hinzugefügt wird (in diesem Code nicht gezeigt, da es automatisch von Wordpress hinzugefügt wird), sollte ul.children
in Link2 ausgeblendet werden.Jquery zeigen oder verbergen Kinder Link, wenn es verfügbar ist
Wenn ich auf Link 2 klicke, der beide Klasse page_item_has_children current_page_item
hat, sollte in diesem Fall ul.children
angezeigt werden. Ich habe versucht, meinen Code brüllen, was ich weiß, dass es absolut falsch ist. Bitte geben Sie mir Ihre Ratschläge. Danke vielmals.
if($(.navigation).hasClass(page_item_has_children)){
(.navigation .page_item_has_children .children).hide();
}else if($(.navigation).hasClass(page_item_has_children) && $(.navigation).hasClass(current_page_item)){
(.navigation .page_item_has_children .children).show();
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="navigation">
<li><a href="#">Link1</a></li>
<li class="page_item_has_children current_page_item"><a href="#">Link2</a>
<ul class="children">
\t <li class="page_item"><a href="#">Link3</a></li>
\t <li class="page_item "><a href="#">Link4</a></li>
</ul>
</li>
</ul>
Das erste, was in allen Ihren JavaScript-Selektoren, Sie brauche eine Art Anführungszeichen um die Selektornamen. Als zweites verwenden Sie innerhalb jeder Ihrer if-Anweisungen $() nicht, um die nav-Elemente auszuwählen. Kleine Dinge trip uns auf ... – Snowmonkey
Danke für Ihren Kommentar. Ich lerne Jquery und Java, also habe ich noch Klebstoff darüber. Haben Sie eine gute Quelle, um Jquery mit Bewegung zu erlernen? Ich habe es gegooglet, aber wenn Sie bitte teilen. – Tony
Sitepoint hat einige gute Bücher, schau dir ihre "Novice to Ninja" -Reihe an. Wirklich, obwohl ich einer der ursprünglichen Betatester für jQuery war, besuchte die erste jQueryCon in Cambridge, habe noch das T-Shirt! Kommt zum Üben zum Üben ... – Snowmonkey