H HenrikAI Medlem sedan nov. 2004 112 inlägg Trådstart 4 mars 2005 14:57 #1 Skulle vilja att att två olika textstycken ska visas, men bara ett i taget (byte av text som visas sker efter ett visst antal sekunder). Ponera att min HTML-kod ser ut så här:
<span id="text1">Visa detta..</span>
<span id="text2">..eller detta</span>
Jag har förstått att jag kan använda
document.getElementById("text1").style.display="..."
document.getElementById("text2").style.display="..."
För att ändra om elementen ska visas eller ej, men sedan är det stopp! Någon som har ett fungerande exempel?
EDIT:
Hittade det här exemplet som löser problemet ovan..
http://www.liquidpulse.net/code/javascript/dynamic_content/text_swapper
...men då fick jag ett nytt problem. Antag istället att jag har flera span som heter text1 och text2:
<span class="text1">Visa detta..</span>
<span class="text2">..eller detta</span>
<span class="text1">Det här kan också visas..</span>
<span class="text2">..det här också</span>
Hur löser man det då?
J jOOOL Medlem sedan sep. 2004 36 inlägg om koden ska ligga i nått med namnet textChange typ så här
<div id="textChange">
Första texten
</div>
Så kan du använda denna funktionen för att ha fyra olika texter.
Vill du lägga till fler så ser du nog hur det ska gå till:
<script>
function UpdateText(phase)
{
switch (phase)
{
case 1: document.getElementById('textChange').innerHTML = 'Första texteten'; setTimeout("UpdateText(2)", 3000); break;
case 2: document.getElementById('textChange').innerHTML = 'Andra texten '; setTimeout("UpdateText(3)", 3000); break;
case 1: document.getElementById('textChange').innerHTML = 'Tredje texten'; setTimeout("UpdateText(4)", 3000); break;
case 2: document.getElementById('textChange').innerHTML = 'Fjärde texten '; setTimeout("UpdateText(1)", 3000); break;
}
}
UpdateText(2);
</script>