ricontrolla l' escape delle stringhe che fai scrivere
testo.document.write("<html xmlns=\"http://www.w3.org/1999/xhtml\" dir=\"ltr\" xml:lang="it">\n");
qui per esempio ti sei perso i backslash di "it"

dopo
testo.document.write("</html>");
aggiungi
testo.document.close();

specifica un nomeFinestra, anche solo _blank
var testo = window.open("", "_blank", stili);

accertati che non ci siano blocchi popup in locale