onmouseout='openNewWindow("<div onclick=CloseWindow('Hallo')>...</div>")'
das Problem sind,denke ich, die Hochkomma bzw. Anführungsstriche.
Das Problem ist die mehrfache Verschachtelung:
HTML-Attributwert
JavaScript-String
HTML-Attributwert
JavaScript-String
Das lässt sich mit SEHR viel Gefummel lösen, aber es macht deinen Code nicht besser, sondern nur unübersichtlich und unwartbar.
Besser ist es, solche Kontextverschachtelung zu vermeiden.
-
Vermeide es, JavaScript-Code in HTML unterzubringen. Weise Event-Handler per JavaScript zu. Vergebe im Dokument nur IDs und Klassen und suche die die Elemente anhand dessen heraus, um ihnen JavaScript-Interaktivität zu verpassen.
-
Vermeide es, HTML-Code im JavaScript-Code unterzubringen. Schreibe HTML-Code direkt ins Dokument. Wenn du ihn nur per JavaScript einblenden willst, dann verstecke ihn standardmäßig per CSS. Ein ausführliches Beispiel habe ich unter https://forum.selfhtml.org/?t=188652&m=1256090 skizziert.
Mathias