Manchmal ist es notwendig, ein Stück Javascript dynamisch einzuführen, nachdem ein bestimmtes Div auf der Webseite geladen wurde. Die Lösung unter IE:
Nachfolgend der zitierte Inhalt: CODE: newjs. onreadystatechange = function ( ) { if (newjs. readyState == 'loaded' ) { // bereit! } } newjs. onload = function ( ) { // bereit! } |
Hauptsächlich werden die Ereignisse onload und onreadystatechange verwendet. Aus diesem Grund können Sie auch externes CSS dynamisch laden. Das Folgende ist eine Schreibmethode, die sowohl für Ie als auch für Firefox geeignet ist.
Nachfolgend der zitierte Inhalt: CODE: var CSS; Funktion include_css (css_file) { var html_doc = document. getElementsByTagName ( 'head' ) [ 0 ]; css = document.createElement ('link'); css.setAttribute ('rel', 'stylesheet'); css.setAttribute ( 'type', 'text/css' ); css.setAttribute('href', css_file); html_doc.appendChild(css); // Änderung des Alarmstatus css. onreadystatechange = function ( ) { if (css. readyState == 'complete' ) { Warnung ('CSS onreadystatechange ausgelöst'); } } css. onload = function ( ) { Warnung ('CSS-Onload ausgelöst'); } return false; } var js; Funktion include_js (Datei) { var html_doc = document. getElementsByTagName ( 'head' ) [ 0 ]; js = document.createElement ( 'script' ); js.setAttribute ('type', 'text/javascript'); js.setAttribute ('src', Datei); html_doc.appendChild(js); js. onreadystatechange = function ( ) { if (js. readyState == 'complete' ) { Warnung ('JS onreadystate ausgelöst'); } } js. onload = function ( ) { Warnung ('JS-Onload ausgelöst'); } return false; } |