Jquery next(div)

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Jquery next(div)

    Ich habe folgenden HTML-Code:

    Quellcode

    1. <ul>
    2. <li>
    3. <span class="jpg img"></span>
    4. <span class="showdetails" style="width:250px;display:inline-block;font-weight:900;cursor: pointer;">2011-09-24 65.Geburt.jpg</span>
    5. <span class="date img"></span> 23. Oktober 2011, 11:05:26
    6. <span class="autor img"></span> sebastian
    7. <div class="details" style="display:block;width:90%;padding:10px;background-color:#dfdfdf;margin:20px;display:none;">
    8. dsasadsdsad
    9. </div>
    10. </li><li>
    11. <span class="jpg img"></span>
    12. <span class="showdetails" style="width:250px;display:inline-block;font-weight:900;cursor: pointer;">2011-09-24 65.Geburt.jpg</span>
    13. <span class="date img"></span> 23. Oktober 2011, 11:05:26
    14. <span class="autor img"></span> sebastian
    15. <div class="details" style="display:block;width:90%;padding:10px;background-color:#dfdfdf;margin:20px;display:none;">
    16. dsasadsdsad
    17. </div>
    18. </li><li>
    19. <span class="gif img"></span>
    20. <span class="showdetails" style="width:250px;display:inline-block;font-weight:900;cursor: pointer;">app_2_23760562627892.gif</span>
    21. <span class="date img"></span> 23. Oktober 2011, 11:05:26
    22. <span class="autor img"></span> sebastian
    23. <div class="details" style="display:block;width:90%;padding:10px;background-color:#dfdfdf;margin:20px;display:none;">
    24. dsasadsdsad
    25. </div>
    26. </li>
    27. </ul>
    Alles anzeigen


    Ich möchte nun bei einem Click auf .showdetails .details einsliden lassen:

    Quellcode

    1. $('.showdetails').click(function(e){
    2. $(this).next('div').slideToggle('slow');
    3. });


    Aber es funktioniert nicht. Wenn ich aber drei next() setzen, klappt es. Dies ist aber eine unschöne Lösung.

    Jemand eine Idee?
    =O
  • hi, Ich kann es leider nicht testen.

    versuchs mal mit closest.

    Quellcode

    1. $('.showdetails').click(function(e){
    2. $(this).closest('div').slideToggle('slow');
    3. });


    Alternativ

    Quellcode

    1. $('.showdetails').click(function(e){
    2. $(this).parent().next('div').slideToggle('slow');
    3. });


    oder

    Quellcode

    1. $('.showdetails').click(function(e){
    2. $(this).nextAll('div:first').slideToggle('slow');
    3. });