Rolf B: JS: Alternative für eval() zum Auslesen einer Variablen

Beitrag lesen

Hallo martinmiethke,

danke für die URL, da kann man endlich live gucken, was Du tust.

Das könnte jetzt ein Caching-Problem sein. Denn wenn ich das aufrufe, kommt keine Fehlermeldung zur undefinierten Variablen.

Ich hatte kurz überlegt, ob Du ein Timing-Problem haben könntest, denn Du bindest im head ein Script ein und verwendest im Body Inline-Script. Würde das busnd.js asynchron geladen, wären die Werte erst da, wenn dein Inline-Script schon längst vorbei ist. Aber das ist nicht so, solange da nicht explizit async oder defer steht, oder type="module", wartet der Browser mit dem Aufbau des DOM, bis das Script geladen und ausgeführt ist.

Die FM mit den "mehreren Popups" verstehe ich auch nicht, du öffnest ja nur eins. Und bei späteren Starts der Seite sehe ich das auch nicht mehr. Keine Ahnung.

Dass der Autostart des Audio nicht gelingt, ist eine Folge des neuen Fensters. Popup- und Autostart-Features sind zu oft missbraucht worden, um Leute mit Werbung zuzududeln, deshalb ist ein Autostart nur als direkte Reaktion auf einen Klick zulässig. Oder wenn die Lautstärke auf 0 steht - haha. Du solltest also ggf. überlegen, von einen Popup-Window auf ein Popup-Element auf deiner Seite umzusteigen. Dafür brauchst Du allerdings etwas mehr JavaScript. Am einfachsten geht es mit einem <dialog> Element, damit schließt Du allerdings die Internet Explorer Anwender aus; der kennt das nicht. Unser Wiki hat ein kurzes Tutorial zu Dialogen, aber bevor Du Dich da hinein vertiefst - das braucht noch eine Überarbeitung. Dialoge gehen einfacher als da gezeigt.

Rolf

--
sumpsi - posui - obstruxi