Kezdőoldal » Számítástechnika » Weblapkészítés » Ezt valaki eltudná magyarázni...

Ezt valaki eltudná magyarázni nekem (js)?

Figyelt kérdés

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.



2015. okt. 11. 16:00
 1/2 Drone007 ***** válasza:

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.

2015. okt. 11. 17:42
Hasznos számodra ez a válasz?
 2/2 CspCsj ***** válasza:

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;}

2015. okt. 11. 17:44
Hasznos számodra ez a válasz?

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

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!