Ich habe eine Liste von Fragen/Antworten div
s: Wenn ich eine Antwort durch Klicken auf eine Frage öffne, werden alle anderen Antworten geschlossen.Wie der Bildschirm dem Slidogogle folgen kann
<div class="question">
QUESTION 1
</div>
<div class="answer">
ANSWER 1
</div>
<div class="question">
QUESTION 2
</div>
<div class="answer">
ANSWER 2
</div>
(etc.)
Dafür verwende ich einen JavaScript-Code found on Stackoverflow, die großen Werke:
Mein Problem
$(document).ready(function() {
var $answers = $('.answer');
$(".question").click(function() {
var $ans = $(this).next(".answer").stop(true).slideToggle(500);
$answers.not($ans).filter(':visible').stop(true).slideUp();
})
});
: Wenn einer der geöffneten Antworten (let'say die Antwort 2) ist wirklich lang, mit eine sehr große Höhe, wenn ich auf die nächste Frage (die Frage 3) klicke, werden alle
div
s (nach dem SlideUp von Antwort 2) gehen, und der Bildschirm wird ihnen nicht folgen. Und die Antwort, die ich will (die Antwort 3) wird nicht sichtbar sein, ich muss nach oben scrollen, um sie zu sehen.
Hier ist ein exemple (Frage 2 die lange Antwort ist): https://jsfiddle.net/TB54/1dgchwyw/1/
Gibt es eine Möglichkeit den Bildschirm zu slideUp mit der Antwort zu machen, die geschlossen wurde gerade? Oder zumindest um den Bildschirm auf die angeklickte Frage zu scrollen?
Danke! Das ist eine gute Back-up-Lösung, aber ich würde lieber eine Scroll-Leiste vermeiden. – TB54
@ TB54 kann es Benutzererfahrung obwohl verbessern. Berücksichtigen Sie dies. :) –