问题
dcoument.implementation.createHTMLDocument [2] is one of the lesser-known DOM methods that (surprise!) creates a brand new HTML document.
Unsurprisingly, browser support is rather poor, but I found some workarounds:
- Use an XLSTProcessor (crazy stuff!) in Firefox < 4
Create an empty iFrame:
var iframe = document.createElement('iframe'); iframe.style = 'display: none'; iframe.src = 'data:text/html,<!DOCTYPE html><title></title><body>'; document.body.appendChild(iframe); newHTMLDocument = iframe.contentDocument; // <- we need this. document.body.removeChild(iframe);
Still, since IE does not support the data
scheme on iframes, there is no way to do it in IE. Or is there?
回答1:
How about setting src
to about:blank
?
(And perhaps document.write
ing an empty HTML document)
来源:https://stackoverflow.com/questions/4935664/how-to-create-a-new-htmldocument-in-ie