utils
The frame/utils module provides helper functions for working with platform
internals like frames and
browsers.
create
Module exports create function that takes nsIDOMDocument of the
privileged document
and creates a browser element in it's documentElement:
1 2 3 4 | let { open } = require('api-utils/window/utils');let { create } = require('api-utils/frame/utils');let window = open('data:text/html,Foo');let frame = create(window.document); |
Optionally create can be passed set of options to configure created frame
even further. Following options are supported:
-
typeString that defines access type of the document loaded into it. Defaults to'content'. For more details and other possible values see documentation on MDN -
uriURI of the document to be loaded into created frame. Defaults toabout:blank. -
remoteIftrueseparate process will be used for this frame, also in such case all the following options are ignored. -
allowAuthWhether to allow auth dialogs. Defaults tofalse. -
allowJavascriptWhether to allow Javascript execution. Defaults tofalse. -
allowPluginsWhether to allow plugin execution. Defaults tofalse.
Execution of scripts may easily be enabled:
1 2 3 4 5 6 7 | let { open } = require('api-utils/window/utils');let { create } = require('api-utils/frame/utils');let window = open('data:text/html,top');let frame = create(window.document, { uri: 'data:text/html,<script>alert("Hello")</script>', allowJavascript: true}); |