problem beim schliessen von Fenstern

sundown74

Grünschnabel
Ich habe den Code:
<script language="javascript" type="text/javascript">
<!--
function fenster()
{
var win;
win=window.open("datei.html","NeuesFenster","width=400,height=100");
win.setTimeout('window.close()',20000);
}
//-->
</script>

der im body tag mit <body onload="fenster()">

aufgerufen wird.

Wenn ich anstatt datei.html eine externe Seite aufrufe (z.B. http://www.tutorials.de)
schliesst das Fenster nicht mehr automatisch...warum?
Was muss ich machen, damit auch bei externen urls das Fenster nach einer best. zeit schliesst

Danke!
 
so herum ;)
Code:
var win;
function fenster()
{
win=window.open("http://www.tutorials.de","NeuesFenster","width=400,height=100");
window.setTimeout('win.close()',2000);
}
 
Habe den Code jetzt angepasst und noch folgendes Problem:
Code:
<SCRIPT LANGUAGE="JavaScript" type="text/javascript">
<!--
closetime = 0; 

links = new Array();
links[0] = 'http://www.seite1.de';
links[1] = 'http://www.seite2.de';
links[2] = 'http://www.seite3.de';
usw..


function Start(URL, WIDTH, HEIGHT) {
windowprops = "left=50,top=50,width=" + WIDTH + ",height=" + HEIGHT;
preview = window.open(URL, "preview", windowprops);
if (closetime) setTimeout("preview.close();", closetime*1000);
}

function doPopup() {

i = Math.round(Math.random()*7)-1;
 if(i == -1){i = 0}
url = links[i]; // URL + Dateiname des Popupfensters
width = 300; // Breite des Fensters
height = 200; // Höhe des Fensters
delay = 3; // Zeit bevor es aufpoppt
timer = setTimeout("Start(url, width, height)", delay*1000);
}


// -->
</script>

Funktioniert wunderbar mit einem Link. Fenster öffnet sich, lädt die Seite und schliesst sich dann wieder.
Allerdings möchte ich, das dieser Vorgang mehrmals wiederholt wird.
Er öffnet ein Fenster, lädt eine Seite, schliesst es wieder, öffnet dann ein neues Fenster, lädt eine Seite und schliesst auch das wieder, usw...

Habe versuche eine for(a=0;a<5;a++) Schleife einzubauen, bekomme es aber nicht hin..

Danke für Eure Hilfe...
 
Hi,

folgendes Script zeigt alle URLs im Array in zufälliger Reihenfolge einmal in einem neuen Fenster an.
Code:
var arrLinks = new Array();
arrLinks[0] = "seite1.html";
arrLinks[1] = "seite2.html";
arrLinks[2] = "seite3.html";
arrLinks[3] = "seite4.html";

var preview = null;
var hTimeout = null;

function openUrl(){
  // Falls alle Seiten angezeigt wurden
  if(arrLinks.length == 0){
    return;
  }
  // Neuen Zufalls-Index ermitteln
  intI = Math.round(Math.random()*1000)%arrLinks.length;
  strURL = arrLinks[intI];
  // Element aus Array löschen
  arrLinks.splice(intI, 1);

  // Versuchen, Fenster zu schliessen
  try{
    preview.close();
  }catch(e){}

  // Neues Fenster öffnen und Timeout starten
  preview = window.open(strURL, "preview", "left=50,top=50,width=300,height=200");
  hTimeout = window.setTimeout("openUrl()", 3000);
}
Um dem Benutzer die Möglichkeit zu geben, die Vorschau abzubrechen, solltest du eine geeignete
Funktion zur Verfügung stellen. Diese könntest du zum Beispiel über einen Button aufrufen.
Code:
function stopTimer(){
  try{
    window.clearTimeout(hTimeout);
  }catch(e){}
}
Ciao
Quaese
 

Neue Beiträge

Zurück