2 Stimmen

Das Div mit der Nummer anzeigen, die in der Navigation indiziert wurde

Ich habe eine solche Einrichtung:

Link          ------------------------------
Link          |                            |
Link          |                            |
Link          |            DIV             |
              |                            |
              |                            |
              ------------------------------

                 (3 more divs are hidden) 

Die Anzahl der Links wird variieren, aber für jeden Link gibt es auch ein Inhalts-Div.

Bislang habe ich diesen Code verwendet und er funktioniert:

$(".link").click(function () {  
var divname = this.name;
$("."+divname).fadeIn('slow').siblings().hide();

Da der Inhalt jedoch von Benutzern erstellt wird, habe ich diesmal keine Kontrolle über die Vornamen.

Ist es möglich, mit jQuery, um die Anzahl der Links und die Anzahl der Boxen (die immer gleich sein wird) zu zählen und sagen wir, ich klicke auf den zweiten Link, wird die zweite div zeigen. Wenn ich auf den dritten Link klicke, wird das dritte Div angezeigt und so weiter.

Dies ist die html-Datei:

<div id="links">
 <span>Link</span>
 <span>Link</span>
 <span>Link</span>
 <span>Link</span>
</div>

<div id="content">
 <div>DIV 1</div>
 <div>DIV 2</div>
 <div>DIV 3</div>
 <div>DIV 4</div>
</div>

Dies ist mein Versuch:

$(".div").not(":first").hide();

$(".link").click(function () {  

    var number = $("#links").index(this);   

});

Noch nicht sehr viel. Aber wie kann ich jetzt dem Inhalt sagen, dass er das Div mit der indizierten Zahl anzeigen soll, die gerade in den Links angeklickt wurde?

2voto

Blender Punkte 273072

Ich würde etwas in der Art versuchen:

$(".div").not(":first").hide();

$("#links span").click(function () {  
  $('#content div').eq($(this).index()).show().siblings().hide();
});

0voto

Christophe Punkte 25789

JQuery-Schleifen enthalten einen Zähler:

$("#links span").each(function(i) {    
  $(this).click(function(){$("#content div").eq(i).fadeIn("slow").siblings().hide();});
});

Die Fiedel ist da: http://jsfiddle.net/Rmr8R/

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X