0

我正在构建一个 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 方法吗?

4

1 回答 1

1

这就是你需要的:

function handleContextMenu(event) {
    var htmlClip = getHtmlClip(event);
    safari.self.tab.setContextEventUserInfo(event, htmlClip);
}
于 2012-07-03T01:54:09.990 回答