chrome-extension上下文菜单显示但在浏览器中打开的pdf文件中没有响应

时间:2018-10-22 13:27:26

标签: google-chrome pdf google-chrome-extension contextmenu

我有一个扩展程序,当单击上下文菜单时,该扩展程序将在网页中插入一个“ div”。在除pdf文件之外的普通网页上,此方法都可以正常工作。

chrome pdf查看器打开pdf文件,右键单击鼠标时我可以在上下文菜单中看到该项目,但是当我单击上下文菜单项时,什么也没有发生。但是,其他扩展程序的上下文菜单仍然有效。

那么,要使上下文菜单正常工作,需要采取什么特殊处理措施?

一些设置:

background.js

chrome.contextMenus.create({
  id:'menuid',
  title: 'My Menu',
  contexts: ['all']
})

chrome.contextMenus.onClicked.addListener(function (info, tab) {
  if (info.menuItemId === 'menuid') {
    chrome.tabs.sendMessage(tab.id, {
      type: 'contextMenus',
      info: info,
      tab: tab
    }, {})
  }
})

content_script.js

chrome.runtime.onMessage.addListener(function (request, sender, sendResponse) {
  if (request.type === 'contextMenus') {
    InsertingElement(request.info, request.tab)
  }
})

似乎InsertingElement没有在pdf页面中触发。而且似乎很多事件都不可用,例如,当我在内容脚本中添加以下内容时:

document.addEventListener('pointerup', pointerUpProcess)
document.addEventListener('click', clickProcess)

当我单击打开的pdf页面时,不会触发回调函数。我想知道 如果chrome pdf查看器拦截并禁用了这些事件。如果是这样,如何启用 他们吗?

我做了另一个实验,方法是从内容脚本中注入按钮并设置回调 按钮中的click事件功能起作用。

0 个答案:

没有答案