Kezdőoldal » Számítástechnika » Programozás » Hogyan kell tömbökből megnyitn...

Hogyan kell tömbökből megnyitni weboldalakat?

Figyelt kérdés

Az lenne a kérdésem, hogy hogyan oldjam meg ezt a javascript-et, úgy hogy több oldalt is megnyisson ne csak egyet, de mindegyiket csak 7 másodpercig tartsa nyitva aztán zárja be. Egymás után kéne megnyitni őket, szóval először az elsőt 7 másodpercig, aztán az átvált a másodikra és így tovább. Azért kérek segítséget, mert a tömbökhöz és az időzítéshez nem nagyon értek még...


Eddig jutottam tömb nélkül:



<FORM NAME="urlap">

<INPUT TYPE="button" VALUE="Kattints ide" onClick="ujablak()"><BR>

</FORM>



<SCRIPT LANGUAGE="JavaScript">



function ujablak(){


var ablak = open(" [link]

setTimeout(function(){ablak.close();},7000);


}


</SCRIPT>


De ez ugye csak 1 oldal, és nekem többet kellene...



2012. júl. 16. 19:49
 1/2 iostream ***** válasza:
Hát ha az összes ablakot te írod, akkor ugye értelemszerűen minden oldalra rakd be az ablakváltó kódot (egyébként a refresh tag is képes erre, és az akkor is működik, ha letiltják a js futást).
2012. júl. 16. 20:28
Hasznos számodra ez a válasz?
 2/2 anonim válasza:

Itt nézd a válaszom, átláthatóbb: [link]

(ahogy beküldöm, ez itt alul össze fog kuszálódni)



// weboldalak tömbje

var urls = [

' [link]

' [link]

' [link]

' [link]

];



function ujablak(){

if (urls.length) {


setTimeout((function(ablak) {

return function(){

if(ablak) { ablak.close(); }

};

})(open(urls.unshift())), 7000);


} else {


alert('Nincs több url, nézz inkább tv-t!');


}

}


/*

HELPIKE:


urls.length: reprezentálja a tömb elemeinek számár

urls.unshift(): Eltávolít egy elemet a tömb elejéről, és visszatér az eltávolított elemmel.


Önmagát hívó függvény, mely azonnal visszatér egy új függvénnyel:

(function(v){

return function () { alert(v) }; // őrizz meg!

})('Őrizz meg!');


Erre azért van szükség, hogy el tudd menteni az átadott argumentumot későbbre. setTimeout-nál ugye a függvényhívás később (ez esetben 7 másodperc múlva) történik meg. Ilyenkor már nem lehetsz biztos az ablak változó tartalmában, mert lehet, hogy a felhasználó újra rákattintott a gombra. Azonban ha egy új burkoló függvénybe teszed, és annak adod át az argumentumot, így a létrejövő függvény konstruktoraként megőrzi azt, vagyis hivatkozhatsz rá nyugodtan, bármikor.


if(ablak) { ablak.close(); }: Azért kell az IF, mert lehetséges, hogy a felhasználó idő előtt bezárta az ablakot.

*/

2012. júl. 17. 01:52
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!