In rete: http://www.elegio.it/javascript/ampliamento-di-doc.html
Vedere anche : http://www.elegio.it/test/test2.html e, un po' più complicato : http://www.elegio.it/test/test3.html e per ampliare un documento con immagini SVG usare il metodo applicato qui: http://www.elegio.it/svg/svg2014/pallini+altro.html e guardare questi esempi pratici dove aggiungo decine di stelle: http://www.elegio.it/svg/svg2014/molti-disegni-svg+2.html ma questo piccolo documento è più completo a proposito di certe difficoltà nell'attivare Javascript...

Vedere anche: ampliamento-di+doc-esterno-ie.html praticamente identico a questo ma con uso di un file esterno.

Come ampliare il documento aggiungendo sorgente Javascript

prelevato da un file esterno o da marche del documento stesso , riconoscibili in base ad un loro particolare name che, ad esempio, qui è "xscript".

Ecco un esempio di sorgente aggiuntivo che ora trascrivo ed attivo onload per verificare che la funzione usata qui si comporti bene...

var kontatore=1000;
function nuova(){
    var commento,listap=document.getElementsByName("risultati");
    if(1^kontatore%2) commento="Ciao per "+kontatore+" pari varie volte !";
    else commento="Ciao per "+kontatore+" dispari varie volte !";
    if(kontatore%10^5)commento+=" [ diviso 10 d\u00e0 resto grosso : "+
                      kontatore%10+" ] ";
    listap[0].innerHTML=commento;
    kontatore++;
    }

Se tutto ha funzionato dovrebbe funzionare anche questo button

La funzione usata qui:

La trascrivo per chiarire un aspetto importante...

function ampliajs() {    
   var j,scritti,sn="",ns,ss="";
   var armadio=document.getElementsByTagName("body")[0]; 
   var nuovojs=document.createElement("script");
   nuovojs.setAttribute("type","text/javascript");
   if(arguments.length>0) nuovojs.setAttribute('src',arguments[0]);
   else{
       scritti=document.getElementsByName("xscript");
       for(j=0;scritti.length>j;j++){
           ss+=scritti[j].innerHTML;
           }
       //
       //  ATTENZIONE : Usa il carattere ^ ossia ^
       //  come sostituto del carattere  > ossia \u003e;
       //
       ns=ss.length;
       for(j=0;ns>j;j++){
          if(ss.charCodeAt(j)==94)sn+="\u003e";
          else sn+=ss.charAt(j);
          }
       nuovojs.innerHTML=sn;
       }
   armadio.appendChild(nuovojs); 
   }

Notare che NON BISOGNA MAI USARE IL CARATTERE > altrimenti la attivazione del sorgente HTML come sorgente Javascript non funziona!!! Pertanto qui viene usato, come carattere sostitutivo di > il carattere ^ che normalmente non ha un significato nel sorgente Javascript. Se per caso fosse necessario fare uso proprio di questo carattere, si potrebbe modificare la funzione usando un altro carattere sostitutivo del PROIBITISSIMO carattere >. Ad esempio il carattere » ossia » che in esadecimale corrisponde a "\u00bb" .