我正在创建一个 Chrome 扩展程序。我希望能够看到用户从 Chrome 复制到剪贴板的内容。这是我目前在内容脚本中所做的工作:
document.addEventListener(
"copy",
() => navigator.clipboard.readText().then(
text => console.log("copied text: " + text)
)
);
出于合理的安全原因,Chrome 不允许您从复制事件本身获取剪贴板。相反,我必须从navigator
。唯一的问题是,每次用户从不同网站复制内容时,Chrome 都会询问用户许可。
从安全角度来看,这是有道理的。由于内容脚本的行为就好像它是在网页上运行的脚本一样,因此 Chrome 想要验证用户是否信任该网站是有道理的。不过,我正在尝试从 Chrome 中执行此操作扩大,所以理想情况下用户应该只需要“相信我”一次。就我的目的而言,用户必须在复制内容的每个新页面上点击“允许”按钮,这太不方便了。
我一直在 Chrome API 中寻找可以在这种情况下帮助我的东西,但我没有成功。我发现可以为用户手动复制某些内容,但我想看看用户正在复制自己的内容。我正在寻找的可能吗?
EDIT:
另一个潜在的解决方法:我可以打电话window.getSelection().toString()
查看用户当前突出显示的内容,并假设这就是刚刚复制的内容。然而,这似乎并不总是产生正确的结果,并且依赖此解决方法似乎可能是一个错误。这是最好的解决方案吗?
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)