Skocz do zawartości

javascript - window.open - jak wykonać kod po załadowaniu strony?


Recommended Posts

Witam

Mam pewien problem, a mianowicie chciałem otworzyć nową stronę za pomocą window.open(), po 10 sekundach od momentu gdy się załaduje całkowicie, chciałbym ją zamknąć za pomocą window.close()... Lecz nie wiem jak mam sprawdzić czy strona została już załadowana.

Mam taki kod:

ref = window.open('jakis_link");
ref.onLoad = function()
{
	  setTimeout(function() { ref.close();},10000);
}
Pomóżcie bo już nie mam pomysłów jak to ogarnąć.
Link to post
Share on other sites

ale co to ma mi dać skoro wszystko mam zamknięte w zdarzeniu window.onload?

<script type="text/javascript">
var ref = new Array();
var reff = new Array();
var timer;
ref[ref.length] = "http://****.pl/da";
ref[ref.length] = "http://****.pl/da";
ref[ref.length] = "http://****.pl/da";
//****************************************************************
function otworzOkno(i, u)
{
	    var j = 0;
	    for(var k=1 ; k <= u ; k++)
	    {
		    if(ref.length>i)
		    {
				 reff[j] = window.open(ref[i++],'okienko'+j);
				 j++;
		    }
	    } 
}

function zamknijOkno()
{
	  for(var t=0; reff.length >t ; t++)
	  {
		   reff[t].close();
	  }
	  window.close();
	  clearInterval(odliczanie);
	
}
window.onload = function()
{
   document.getElementById('przycisk').onclick = function()
   {
	  document.getElementById('formularz').style.display = "none";
	  var i= 0;
	  var czas = 6000;
	  var iler = document.getElementById('txt').value;
	  iler = parseInt(iler);
	  if(iler <= 4 && iler >=1)
	  {
		   timer = odlicz();
		   otworzOkno(0,iler);
		   odliczanie = setInterval(function() {((i<ref.length-1)?otworzOkno(i=i+iler,iler):zamknijOkno()) },czas+=200/*7000*/);
	  }
	  else   
	  {
		   document.getElementById('formularz').style.display = "block";
	  }
   }
}
</script>

Ten skrypt działa tak jak trzeba, czyli otwiera stronya w tylu kartach w ilu poda użytkownik i po wszystkim zamyka te karty, ale oprócz tego chciałbym dodać funkcję, która będzie otwierała w karcie kolejną stronę po 2 sekundach od całkowitego wczytania tej strony.

Teraz skrypt działa tak, że liczy czas od otwarcia strony i po 6 sekundach ją zamyka, a nie od jej całkowitego załadowania :/

Powiedzcie w jaki sposób mam sprawdzić czy strona, która została otworzona przez js została już załadowana?

Link to post
Share on other sites

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Odpowiedz w tym wątku...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

  • Ostatnio przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×
×
  • Dodaj nową pozycję...