objective-c - Javascript 与 Safari 插件交互的全局对象

标签 objective-c cocoa macos safari webkit

问题是我编写了一个 Safari 插件 ( Growler ),允许 Web 应用程序通过调用 Javascript 函数发送 Growl 通知。然而,目前的书写方式,人们需要使用 <embed>初始化插件,以便 Javascript 可以开始使用它(我从 Apple 的示例中获取的内容)。

我想知道是否有一种方法可以定义像 window.<pluginName> 这样的东西这样他们就不必每次都嵌入它?这将允许许多网站开始使用它而无需更改任何代码。

我查看了很多示例和文档,出现了两件事——“WebView”和“WebScriptObject”。我对此很陌生,所以我不太确定该怎么做。

最佳答案

无法编写不处理内容类型的 WebKit 插件。这就是为什么如此多的 Safari“插件”或“扩展”(包括 GrowlSafari)被实现为输入管理器 hack。

您完成此任务的方式是唯一可靠、安全、受支持且并非注定失败的方式。

关于objective-c - Javascript 与 Safari 插件交互的全局对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1088149/

相关文章:

php - FFMPEG 与 PHP 将视频转换为 mp4 和快照

objective-c - 将 NSSlider 与 NSTableView 绑定(bind)

objective-c - 具有类型 ID 的 IBOutlet

objective-c - 在 nsscrollview 上绘制 nsiamgeview 时位置错误?

ios - 将数据存储在自定义类中的 NSArray 中并在其他类/ Controller 中使用

macos - Mac OS 类似于/dev/ttyUSBxx

xcode - Mac OS X Lion 10.7.4 上 HDD 上的 Developer 文件夹

objective-c - 需要对最后的空白进行子串化

ios - 为什么我的节点没有出现在 SpriteKit 模板中?

iphone - 如何从 NSDate 中减去小时数?