Greasemonkey выдает «DOMException: операция небезопасна». на document.implementation.createHTMLDocument().open()
ФФ 84.0.2, ГМ 4.10.0
Код можно увидеть на GitLab . Соответствующая часть:
...
const doc = document.implementation.createHTMLDocument('http://www.w3.org/1999/xhtml', 'html');
console.debug("DOC CREATED")
doc.open() // <-- with GM: DOMException: The operation is insecure.
console.debug("DOC OPENED")
...
Вывод консоли:
...
DOC CREATED
DOMException: The operation is insecure.
Скрипт работает с Tampermonkey.
1 ответ
Получил решение из ответа на синтаксический анализ DOM в JavaScript :
...
const doc = document.implementation.createHTMLDocument('http://www.w3.org/1999/xhtml', 'html');
doc.documentElement.innerHTML = page.responseText
...
вместо:
...
const doc = document.implementation.createHTMLDocument('http://www.w3.org/1999/xhtml', 'html');
doc.open()
doc.write( page.responseText )
...