Hallo zusammen,
ich versuche gerade ein fertiges Script anzupassen, um weitere Fragen in eine Umfrage zu packen.
Die Seite wird anfangs vollständig geladen, es werden aber immer nur die einzelne Fragen zu der
Umfrage angezeigt. Der Rest wird per CSS ausgeblendet. Über JavaScript wird vor oder zurück
gesprungen, innerhalb der Fragen.
Das Ganze sieht dann so aus:
HTML:
JavaScript:
Kann man das Ganze - zumindest im JavaScript-Bereich - etwas optimieren?
Bei bspw. 15 Fragen wären das ja unzählige Zeilen in der JS-Funktion.
Vielleicht habt ihr Tipps für mich?
VG,
ich versuche gerade ein fertiges Script anzupassen, um weitere Fragen in eine Umfrage zu packen.
Die Seite wird anfangs vollständig geladen, es werden aber immer nur die einzelne Fragen zu der
Umfrage angezeigt. Der Rest wird per CSS ausgeblendet. Über JavaScript wird vor oder zurück
gesprungen, innerhalb der Fragen.
Das Ganze sieht dann so aus:
HTML:
HTML:
<div style="display: block" id="div1">
<h2>Hallo,</h2>
<p>Teil 1 von 3...</p>
<span class="btn btn-danger"
onclick="go1to2()">
Nächsten Seite
</span>
</div>
<div style="display: none" id="div2">
<h2>Hallo,</h2>
<p>Teil 2 von 3...</p>
<span class="btn"
onclick="go2to1()">
Zurück
</span>
<span class="btn btn-danger"
onclick="go2to3()">
Weiter
</span>
</div>
<div style="display: none" id="div3">
<h2>Hallo,</h2>
<p>Teil 3 von 3...</p>
<span class="btn"
onclick="go3to2()">
Zurück
</span>
<span class="btn btn-danger"
onclick="go3to4()">
Weiter
</span>
</div>
JavaScript:
Javascript:
function go1to2() {
document.getElementById('div1').style.display = 'none';
document.getElementById('div2').style.display = 'block';
document.getElementById('div3').style.display = 'none';
}
function go2to3() {
document.getElementById('div1').style.display = 'none';
document.getElementById('div2').style.display = 'none';
document.getElementById('div3').style.display = 'block';
}
function go3to4() {
document.getElementById('div1').style.display = 'none';
document.getElementById('div2').style.display = 'none';
document.getElementById('div3').style.display = 'none';
}
function go4to3() {
document.getElementById('div1').style.display = 'none';
document.getElementById('div2').style.display = 'none';
document.getElementById('div3').style.display = 'block';
}
function go3to2() {
document.getElementById('div1').style.display = 'none';
document.getElementById('div2').style.display = 'block';
document.getElementById('div3').style.display = 'none';
}
function go2to1() {
document.getElementById('div1').style.display = 'block';
document.getElementById('div2').style.display = 'none';
document.getElementById('div3').style.display = 'none';
}
Kann man das Ganze - zumindest im JavaScript-Bereich - etwas optimieren?
Bei bspw. 15 Fragen wären das ja unzählige Zeilen in der JS-Funktion.
Vielleicht habt ihr Tipps für mich?
VG,