Ich frage mich, was passiert mit den Funktionen setTimeout, setInterval und anderen Funktionen, die beim Laden des DOMs ausgelöst werden, wenn ich die Webseite in einem anderen Tab oder Fenster öffne. Werden sie ausgelöst, sobald ich die Webseite tatsächlich gesehen habe, oder werden sie ausgelöst, sobald das DOM geladen ist, sogar im Hintergrund? Ist das bei verschiedenen Browsern anders?Webseite in neuem Tab und Timeouts öffnen
Antwort
Zumindest in Chrome und Opera ist der Callback ausgeführt, auch wenn die Seite im Hintergrund geladen wird.
Betrachten Sie das folgende HTML
<a href="javascript:openWindow()">Click me!</a>
und die entsprechenden JavaScript
function openWindow()
{
var article = open('');
focus();
article.setTimeout(function(){ article.alert("Hello"); }, 3000);
}
(Siehe this fiddle).
Wenn Sie bei gedrückter Strg-Taste auf den Link klicken, öffnet Chrome eine neue Hintergrundregisterkarte. Immer noch wird die alert
nach 3 Sekunden angezeigt. Das gleiche Beaviour kann in Opera beobachtet werden. Ich habe auch Edge versucht, aber es wird nicht die Seite in einem Hintergrund-Tab öffnen, daher kann ich nicht sagen, ob das JS noch ausgeführt würde.
In Ordnung. Weißt du, was passiert, wenn ich zum Beispiel den Tab in iPhone Chrome öffne und die App verliere? Laufen die Funktionen noch im Hintergrund? – uksz
Probieren Sie es einfach mit der Geige aus. Ich habe es gerade mit Chrome @ Android versucht und die Warnung wurde überhaupt nicht angezeigt, als ich die Registerkarte im Hintergrund öffnete. –
@uksz und vergessen Sie nicht, meine Antwort als die richtige zu markieren;) –
- 1. FireFox Toolbar Fenster öffnen in neuem Tab
- 2. VB.Net - Webbrowser, In neuem Tab öffnen Navigationsfehler
- 3. Web in neuem Tab öffnen Selenium + Python
- 4. HTML-Schaltfläche Öffnen Link in neuem Tab
- 5. Jquery In neuem Tab öffnen (_blank)
- 6. Summernote immer Link in neuem Tab öffnen
- 7. window.location öffnet in neuem Tab
- 8. Header-Standort in neuem Tab
- 9. In neuem Tab öffnen funktioniert nicht in angular2
- 10. Wie neues Fenster in neuem Tab in angular2 öffnen
- 11. Wie credits url of highcharts in neuem Tab öffnen
- 12. Text durch klickbaren Text ersetzen Link in neuem Tab öffnen
- 13. Magento-Produktseite in neuem Tab öffnen Target Blank
- 14. .click() Ereignis wenn 'In neuem Tab/Fenster öffnen'
- 15. Capture „Link in neuem Tab“ und „Link in neuem Fenster“ Ereignis
- 16. Javascript Hyperlink (.link) öffnet in neuem Tab
- 17. "Link in neuem Tab öffnen" sollte die iFrame-source-Seite nicht öffnen
- 18. URL von einem Text finden und diese URL in neuem Tab öffnen
- 19. Formular wird nicht in neuem Tab geöffnet
- 20. laden Sie eine URL in neuem Tab jquery
- 21. Link in neuem Tab aber ohne _blank Methode
- 22. Öffnen einer URL in einem neuen Tab
- 23. Wie eine Umleitung Link öffnet in neuem Tab machen
- 24. iPad Chrome - Formular in neuem Fenster/Tab einreichen funktioniert nicht
- 25. öffnet Link in neuem Tab mit Github Abschlags-Target = "_ blank"
- 26. IE8 Webseiten nicht öffnen in neuem Fenster
- 27. Machen Sie Links in einem bestimmten Div in neuem Tab öffnen
- 28. Link in neuem Fenster mit Jquery öffnen
- 29. Target _blank öffnet nicht in neuem Tab/Fenster
- 30. Letztes Projekt in neuem Fenster öffnen bleiben
sie werden nur einmal ausgelöst .. die Seite geladen wird .. Auf Rekonstruktion von Dom .. sie werden nicht ausgelöst werden. –