Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Fenster öffnen und schließen

Empfohlene Antworten

Veröffentlicht

hallo

ich habe nun dieletzten tage versucht eine funktion zu finden die mir z.b. 3 fenster öffnet und nach gewisser zeit schließt (für warnmeldungen) zum öffnen und schließen


function popupt($urlp,$numer2){
echo "<script LANGUAGE=JavaScript>
j = new Array();
i=\"".$numer2."\";
// alert(i);
links=\"".$urlp."\";
// alert(links); alert(links.length);
j[i] = window.open(links, i, \"content=10, width=310, height=400, screenX=0, screenY=\" + i * 100);
setTimeout('j['+i+'].close()', 10000);\n";
echo "</SCRIPT>\n";
// sleep(2);

}[/PHP]

teil zum aufruf

[PHP]
$urlp1="http://www.google.de";
$urlp2="http://www.ebay.de";
$urlp3="http://www.arcor.de";
popupt($urlp1,1);
popupt($urlp2,2);
popupt($urlp3,4);

die links werden geöffnet aber nur der letzte geschlossen.

habe es auch mit array probiert aber dies öffnet 1 fenster dann wars das.

function popup1($urlp,$numer2){
//$urlp="http://www.google.de";
print_r( $urlp);
$urlp[0]="http://www.google.de";
$urlp[1]="http://www.ebay.de";

echo "<script LANGUAGE=JavaScript>\n";
echo "links = new Array()";
foreach (urlp as $key => $wert)
{
echo "links['$key'] = '$wert';\n";
}
echo "alert(links.length);\n";
// echo "aufruf(0,\"".$urlp."\");\n";
echo"
i=0;
if(i == 0) j = new Array(links.length);

j[i] = window.open(links[i], \"Fenster\"i, \"content=10, width=310, height=400, screenX=0, screenY=\" + i * 100);
setTimeout('j[i].close()', 10000);

if(i < (links.length - 1)) {
i++;
setTimeout('aufruf(' + i + ')', 2000);
}
";
echo "</SCRIPT>\n";


}[/PHP]

Bearbeitet von octavia

Von mir gibt erst mal eine Anmerkung: PHP: echo - Manual. Kennst du die Syntax

echo <<<SYMBOL
Ganz viel interpolierter Stringinhalt
SYMBOL;
[/PHP]

? Damit wird dein lesbarer. Außerdem solltest du dir für solche Sachen mal überlegen einen Template-Mechanismus zu verwenden.

Dann noch eine Frage: Wie sieht denn der generierte JS-Code aus?

Und der eigentliche Denkanstoss. Kann es sein, das Javascript nur einen Thread hat und damit nur ein Timeout unterstützt? Baue dir doch eine Lösung, die die Angaben zum Fenster in einem Array speichert, zusammen mit dem Zeitpunkt des Öffnens. Statt dem Timeout definierst du ein Intervall, das regelmäßig durch das Array geht und die Fenster schliest, wenn die Lebenszeit abgelaufen ist.

mit arry habe ich schon probiert. siehe 3. absatz .

Nur dort tue ich michetwas schwer mit js die werte zu übergeben bzw 1 wert geht aer nicht mehrere

ja da würden aber fenster mit zugehen die offen bleiben sollen.

Müsste ja irgndeiw gehen das hanhand einer fensternummer oder id genau dieses fenster zugeht

Deswegen die Lebenszeit. jeder Eintrag besteht aus dem Fensterobjekt und dem Zeitpunkt, wann dieses erzeugt wurde.

Im Intervall wird eine Funktion aufgerufen, die alle abgelaufenen Fenster schließt.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.