Autor Zpráva
waran
Profil
Zdravím,
chtěl bych se zeptat, jestli někdo nevidíte v tomhle kódu nějakou chybu, která by způsobovala, že se po jednom "přetočení" textu už znova nepustí. Podle mě mám kód v pořádku, takže by to mělo fungovat jako obyčejné defaultní (a již nepodporované) marquee.
Díky moc.
margin
Profil *
Tag <marquee> je podporovaný všemi prohlížeči.
Pokud použiješ jezdící text, je to stejně hnusné, bez ohledu na implementaci.
peta
Profil
<script type="text/javascript">
var obj1 = document.getElementById("marquee");
var obj2 = document.getElementById("marquee_block");
var stylTextu = obj1.style;
var stylBloku = obj2.style;
var poziceXMax = screen.availWidth; // u mne je to 1440, ikdyz mam okenko 500x500px a dost nepekne je to za obrazovkou
var poziceX = poziceXMax;
var absolutniSirka = obj1.offsetWidth;
function start(){
    animace = window.setInterval("krok(-2,0)", 30);
}
function restart(){
poziceX = poziceXMax;
window.clearInterval(animace);
start();
}
function krok(stepX,stepY){
    poziceX += stepX;
    stylBloku.width = poziceXMax - 10 + 'px'; //??? proc menis sirku bloku opakovane na 1440-10?
    stylTextu.left = poziceX + "px";
alert(obj1.offsetWidth);        //1387
    if (poziceX == -obj1.offsetWidth) {    // poziceX == -1387, ale 1440-2-2-2-2-2-2-2... je vzdy sude cislo a ty to porovnavas s lichym, takze bych tam dal <=; nehlede na to, ze ta podminka je podivna, kdyz mas mozna v umyslu menit width
      restart();
    }
}
start();
</script>

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: