Ezt valaki eltudná magyarázni nekem (js)?
Elkezdtem tanulni a js 24 óra alatt könyvből. Viszont elakadtam. Le van írva hogy mi mire jó de nem elég részletesen és az a pár mondatocska nem elég.
var msg = "This is an example of a scrolling message. ";
msg = "... ..." + msg;
var pos = 0;
function ScrollMessage() {
document.title = msg.substring(pos, msg.length) + msg.substring(0, pos);
pos++;
if (pos > msg.length) pos = 0;
window.setTimeout("ScrollMessage()", 100);
}
ScrollMessage();
Nem teljesen tiszta a dolog. msg.substring(pos msglength) arra szolgál hogy elejétől a végéig jelenitse meg. de miért kell még egy + 0tól 0ig beolvasás?
illetve a pos = 0 miért kerül zárójelen kivülre?
köszönöm.
Ha megnézed a substring függvényt, akkor láthatod, hogy a paraméterei sorrendben: (kezdőpont, karakterek száma)
A ScrollMessage függvény azt csinálja, hogy kiírja a böngésző címsorába az üzenet szövegét a pos pozíciótól kezdődően, majd a 0. pozíciótól pos pozíció hosszúságig. majd emeli egyel a pozíciót, és ezt tizedmásodpercenként ismétli. Ha pos pozíció eléri az üzenet hosszát, a pos 0-ra esik, és kezdi elölről.
Ez azt fogja eredményezni, hogy az üzenet a böngésző címsorában mint egy fényreklám scrollozódni fog: bal oldal felé betűnként eltűnik, majd újra kezdődik, az utolsó karakter után ismét jön az üzenet. Ezért van elé szúrva az a "... ..." karaktersorozat.
A pos azért van a függvényen kívül definiálva, hogy az alapértéket megadja, és a pos változó ne legyen ismeretlen a függvénynek, bár lehetséges, hogy e nélkül is működne.
Ez egy végtelen ciklus, amiben a pos változót nullától a szöveg hosszáig növelnek, majd amikor eléri, akkor visszaállítják nullára.
Az általad említett "elejétől végéig" és "0-tól 0-ig" csak a pos=0 esetén lesz, utána jön a pos=1, pos=2 stb. érték.
A pos=0 az if elágazás igaz értékénél hajtódik végre. Ez csak szintaktika, mivel egy utasításnál nem kell kapcsos zárójeleket kitenni. Ugyanazt jelenti, mint ez:
if (pos > msg.length) {pos = 0;}
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!