/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ "use strict"; /** * Loads an iframe. * * @return {Promise} promise that resolves when iframe is loaded. */ function createIframe(aSrcDoc) { return new Promise(function(aResolve, aReject) { let iframe = document.createElement("iframe"); iframe.onload = function() { aResolve(iframe.contentDocument); }; iframe.onerror = function() { aReject("Failed to load iframe"); }; if (aSrcDoc) { iframe.srcdoc = aSrcDoc; } document.body.appendChild(iframe); }); }