Öffnen Sie ein neues tab/Fenster und etwas dazu schreiben?
Ich bin mit Ausführen von JS zu schreiben und testen von Javascript-code innerhalb von Firefox. Ich möchte Sie zum öffnen einer neuen Registerkarte/Fenster und etwas dazu schreiben, und ich habe versucht
var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"].getService(Components.interfaces.nsIWindowMediator);
var win = wm.getMostRecentWindow("navigator:browser");
printWindow = win.open("about:blank");
printWindow = wm.getMostRecentWindow("navigator:browser");
printWindow.gBrowser.selectedBrowser.contentDocument.write('hello');
Und
myWindow=window.open('','','width=200,height=100')
myWindow.document.write("<p>This is 'myWindow'</p>")
myWindow.focus()
Jedoch bekomme ich immer diesen Fehler
[Exception... "Der Betrieb ist unsicher." code: "18" nsresult:
"0x80530012 (SecurityError)"
Gibt es eine Möglichkeit, um durch diese Ausnahme?
"Ausnahme: Der Vorgang ist unsicher" ist ein bug der Firefox-Standard-Konsole (bugzilla.mozilla.org/show_bug.cgi?id=663406), es geht auch nicht mit Firebug Konsole auf Firefox und Chrom-Standard-Konsole, kommentierte ich hier stackoverflow.com/questions/12898528/...
InformationsquelleAutor Teiv | 2012-08-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Bearbeiten: ab 2018 soll diese Lösung funktioniert nicht mehr. So sind Sie wieder zu öffnen
about:blank
in einem neuen Fenster und das hinzufügen von Inhalten.Nicht "schreiben", um das Fenster, öffnen Sie es mit dem Inhalt, den Sie benötigen:
Referenz: Daten-URIs
DOM-Methoden?
Also versuche ich diesen code pastebin.com/n1znvdYk wie Sie mir sagen, aber es scheint, dass das neue element nicht an das Dokument angefügt überhaupt. Können Sie dies beheben, für mich bitte?
Geben Sie dem Fenster eine chance zu laden?
myWindow.addEventListener("load", ..., false)
Ich habe eine Tonne von Daten zu schreiben, und Firefox hängt sich auf ("Keine Rückmeldung") in Windows. 🙁
InformationsquelleAutor Wladimir Palant
Fenster.open(uri) funktioniert nicht in chrome ab 2018
InformationsquelleAutor Diwakar Raja
Top-level-navigation auf Daten-URLs blockiert wurde in Chrome, Firefox (mit einigen Ausnahmen), DH, - und Edge - (und wahrscheinlich auch andere Browser zu Booten). Sie sind offenbar Häufig für phishing-Attacken und der großen browser-Anbieter beschlossen, dass die Gefahr überwog der Wert der durch legitime Anwendungsfälle.
Diese Mozilla security blog-post erklärt, dass Firefox blockiert
aber nicht blockieren
Können Sie auch Lesen Sie die Vorschlag zu missbilligen und zu entfernen top-frame-navigation auf Daten von URLs im Chrome und anzeigen der aktuelle Chrome-status, der angibt, die entfernt wurde.
Als für, wie Sie tatsächlich öffnen Sie das HTML-Format in einem neuen Fenster oder tab, das sollte ausreichend sein:
Beachten Sie, dass mindestens in Chrom, externe Skripte injiziert über Dokument.schreiben kann nicht geladen werden bei langsameren verbindungen. Das mag nicht relevant sein, hier aber etwas aufpassen.
window.open("about:blank", "_blank")
. Auch der browser wechselt auf die neue Registerkarte automatisch, ruft.focus()
ist sinnlos.Gotcha - danke für die info! Werde ich gehen Sie voran und machen, Bearbeiten (und anzunehmen, es in meinem eigenen code). Vielen Dank für die Festlegung der meine Formatierung, wie gut.
InformationsquelleAutor James T