我可以将 "document" 定义为 Javascript 中的变量吗?
Can I define "document" as a variable in Javascript?
在我的应用程序中,有时我想将用于 querySelector 的“文档”定义为“tinymce.get('steps_html').contentAreaContainer.childNodes[0].contentWindow.document ”。其他时候,我希望“文档”具有通常的含义。
有没有办法可以将“文档”设置为变量?我尝试了以下方法,none 其中 return 一个元素:
正在定义文档:
document = tinymce.get('steps_html').contentAreaContainer.childNodes[0].contentWindow.document;
document.querySelector(myElement) // Returns nothing
定义前缀:
prefix = tinymce.get('steps_html').contentAreaContainer.childNodes[0].contentWindow;
prefix.document.querySelector(myElement); //Returns nothing
将前缀定义为文本:
prefix = "tinymce.get('steps_html').contentAreaContainer.childNodes[0].contentWindow;
prefix.document.querySelector(myElement)"; //Returns nothing
只有 tinymce.get('steps_html').contentAreaContainer.childNodes[0].contentWindow.document.querySelector(myElement)
return 一个元素。
你试过了吗
window.orig_document = window.document
window.document = tinymce.get('steps_html').contentAreaContainer.childNodes[0].contentWindow.document
window.document = window.document.orig_document
我找到了自己的答案。我会 post 它以防其他人遇到这个 post.
首先,找到您的 TinyMCE 编辑器 iframe
var iframe = document.querySelector("#myDiv .tox-editor-container .tox-edit-area iframe");
然后获取其内容
var iframe_content = iframe.contentDocument;
然后您可以执行查询
var frame_li = iframe_content.querySelectorAll("#tinymce li");
在我的应用程序中,有时我想将用于 querySelector 的“文档”定义为“tinymce.get('steps_html').contentAreaContainer.childNodes[0].contentWindow.document ”。其他时候,我希望“文档”具有通常的含义。
有没有办法可以将“文档”设置为变量?我尝试了以下方法,none 其中 return 一个元素:
正在定义文档:
document = tinymce.get('steps_html').contentAreaContainer.childNodes[0].contentWindow.document;
document.querySelector(myElement) // Returns nothing
定义前缀:
prefix = tinymce.get('steps_html').contentAreaContainer.childNodes[0].contentWindow;
prefix.document.querySelector(myElement); //Returns nothing
将前缀定义为文本:
prefix = "tinymce.get('steps_html').contentAreaContainer.childNodes[0].contentWindow;
prefix.document.querySelector(myElement)"; //Returns nothing
只有 tinymce.get('steps_html').contentAreaContainer.childNodes[0].contentWindow.document.querySelector(myElement)
return 一个元素。
你试过了吗 window.orig_document = window.document window.document = tinymce.get('steps_html').contentAreaContainer.childNodes[0].contentWindow.document window.document = window.document.orig_document
我找到了自己的答案。我会 post 它以防其他人遇到这个 post.
首先,找到您的 TinyMCE 编辑器 iframe
var iframe = document.querySelector("#myDiv .tox-editor-container .tox-edit-area iframe");
然后获取其内容
var iframe_content = iframe.contentDocument;
然后您可以执行查询
var frame_li = iframe_content.querySelectorAll("#tinymce li");