frankx: script.src funktioniert in IE und Opera aber nicht in FF

Hellihello,

mit

  
  
  buttonJs.onclick=function() {  
   scriptxy.src=this.id+".js";  
   alert(scriptxy.src);  
  };  

Weise ich einem (bzw. 2 weil in foreachschleife) buttons die Funktion zu, die Source des Script-Elements zu ändern. Der Alert bringt auch in allen Browsern die richtige src. In den Scripten selbst (also test1.js, test2.js, auf die dann die scriptxy.src gelegt wird) stecken aber jeweils nochmal Alerts, die Opera und IE auch anzeigen, FF aber nicht. Kann mir jemand sagen, warum?

Dank und Gruß,

frankx

Ps. Das Analoge zum änderen der stylesheet.href klappt in allen dreien.

  1. Hellihello,

    wenn man mit der Funktion allerdings ein neues Scriptelement erzeugt und dieses am body anhängt, klappts auch mit FF. Komisch, dass sich die Quelle eines vorhandenen script-elements zwar ändern lässt, FF dieses neue per src zugefügte Script nicht ausführt.

    frankx

    1. Hellihello

      hier nochmal ein komplettes Script:

        
        
      <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"  
      "http://www.w3.org/TR/html4/loose.dtd">  
      <html>  
       <head>  
        <title>test jssrc</title>  
         <script type="text/javascript" >  
          function change_src(source) {  
         scriptknoten=document.getElementById("script_mit_quelle");  
         scriptknoten.src=source;  
        }  
        function add_scriptelement(source) {  
         js_element=document.createElement("script");  
         js_element.type="text/javascript";  
         js_element.src=source;  
         dummy_div=document.getElementById("dummy");  
         dummy_div.appendChild(js_element);  
        }  
        </script>  
        <script id="script_mit_quelle" type="text/javascript" src="test3.js"></script>  
       </head>  
       <body>  
        <div>  
        Nur Oper und IE:  
        <button onclick="change_src('test1.js')">test1.js</button>  
        <button onclick="change_src('test2.js')">test2.js</button>  
        </div>  
        <div>  
        Alle Browser:  
        <button onclick="add_scriptelement('test1.js')">test1.js</button>  
        <button onclick="add_scriptelement('test2.js')">test2.js</button>  
        </div>  
        <div id="dummy">  
        </div>  
      </body>  
      </html>  
        
      
      

      mit datei test1.js :

        
      alert("aus der datei test1.js");  
      
      

      und test2.js analog.

      Beispiel hier

      Dank und Gruß,

      frankx