【发布时间】:2016-05-10 18:47:46
【问题描述】:
我正在尝试在 JavaScript 中为 Firefox 扩展获取 tinyMCE 编辑器的实例。
当我在控制台输入window.tinyMCE 时,它返回一个对象;但是,当尝试在我的 Firefox 扩展中使用 JavaScript 获取 tinyMCE 编辑器的实例时,我使用 window.content.tinyMCE 并获取 undefined
例如,我正在尝试查看带有我的 Firefox 扩展程序的页面上是否存在 tinyMCE 编辑器。这是我的代码:
if (window.content.tinyMCE) {
alert('its there!');
}
页面上存在 TinyMCE 编辑器,但不会提醒上述代码。当我执行alert(window.content.tinyMCE) 时,它会提醒undefined。
在 XUL 中,Window.content 为主要内容窗口返回一个 Window 对象。 https://developer.mozilla.org/en-US/docs/Web/API/Window/content
Window 对象肯定存在,因为当我在控制台中输入window.tinyMCE 时,它会返回 tinyMCE 对象。
有人知道我做错了什么吗?
【问题讨论】:
-
没有代码,这个问题可能跑题了:寻求调试帮助的问题(“为什么这段代码不能按我想要的方式工作?”)必须包括:A ) 期望的行为; B) 一个特定的问题或错误和 C) 重现它所需的最短代码所有在问题本身 .没有明确的问题陈述的问题对其他读者没有用处。请参阅:How to create a Minimal, Complete, and Verifiable Example、What topics can I ask about here? 和 How to Ask。
-
更好。但是,很大程度上取决于您在扩展程序中使用的
window。除非您在扩展程序中明确定义了window,否则它可能不是您认为的那样。几乎可以肯定,它与控制台中的window不是同一个对象。window是否在您运行的上下文中定义? -
我希望从您那里获得的大部分内容(包括代码)是您如何在扩展程序中定义/获得
window对象,您正在运行代码的上下文(内容脚本/主扩展代码),以及您正在编写的kind of Firefox extension。 -
从您将其标记为 XUL 的事实来看,它可能是 Overlay/XUL 或 Restartless 扩展名。但是,很多人在其他问题上都感到困惑。所以,应该确认它不是 Add-on SDK 或 WebExtensions 附加组件(特别是考虑到后两者在这一点上更常见)?
标签: javascript firefox-addon tinymce xul tinymce-4