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
:
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:
-
type
String that defines access type of the document loaded into it. Defaults to'content'
. For more details and other possible values see documentation on MDN -
uri
URI of the document to be loaded into created frame. Defaults toabout:blank
. -
remote
Iftrue
separate process will be used for this frame, also in such case all the following options are ignored. -
allowAuth
Whether to allow auth dialogs. Defaults tofalse
. -
allowJavascript
Whether to allow Javascript execution. Defaults tofalse
. -
allowPlugins
Whether to allow plugin execution. Defaults tofalse
.
Execution of scripts may easily be enabled:
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
});