Safari扩展 - 如何使用setContextEventUserInfo方法

时间:2012-07-01 15:47:22

标签: safari-extension

我正在构建Safari扩展程序。

在手册上,在关于"添加上下文菜单项"的页面上,在段落"以编程方式添加上下文菜单项",它说:

  

您可以通过回复来将菜单项添加到上下文菜单中   " contextmenu"的扩展版本您的全局页面中的事件或   扩展栏。如果您通过调用存储了有关事件的信息   注入脚本中的setContextEventUserInfo(),您可以使用它   信息,以帮助您决定要添加的菜单项。

来源: https://developer.apple.com/library/archive/documentation/Tools/Conceptual/SafariExtensionGuide/AddingContextualMenuItems/AddingContextualMenuItems.html#//apple_ref/doc/uid/TP40009977-CH4-SW1

现在,我在我的注入脚本上有这个代码(因为我试图将所选文本传递给后台脚本):

function handleContextMenu(event) {
  var htmlClip = getHtmlClip(event);
  setContextEventUserInfo(htmlClip);
}

不幸的是,这会产生此错误:

  

ReferenceError:无法找到变量:setContextEventUserInfo

不幸的是,当我在Google上搜索setContextEventUserInfo时,唯一的结果就是Safari手册的页面!

可以请任何人向我解释我应该如何使用setContextEventUserInfo方法?

1 个答案:

答案 0 :(得分:1)

这就是你需要的:

function handleContextMenu(event) {
    var htmlClip = getHtmlClip(event);
    safari.self.tab.setContextEventUserInfo(event, htmlClip);
}