我正在尝试制作一个书签,以从剪贴板中获取一个id
值,并导航到使用该id
构建的URL。
javascript:(function(){
window.location="index.php?module=Accounts&action=DetailView&record="
+ clipboardData.getData('Text');
})()
(仅当在需要该URL形式的特定网站上单击时,此选项才起作用)
Bookmarklet的基础工作正常,棘手的部分是获取剪贴板值,因为clipboardData
无法正常工作。
我正在使用Firefox v64(尽管我希望这在更多浏览器(至少是现代浏览器)中通用)。
现在,在搜索此问题后,我意识到我要做的事情并不像看起来那样简单-浏览器中的剪贴板API是一个棘手的问题。我发现了一些答案,最好的答案似乎是这样:
JavaScript get clipboard data on paste event (Cross browser)
我也尝试过这种方法,但也无法使它起作用:https://stackoverflow.com/a/27908501/1189711
我在这里的问题是:这些技术中的任何一项都可以应用于书签吗?如果是这样,我将对此有所帮助。我的Java语言技能太低,无法理解如何将这些答案转化为我的情况-即异步内容。
PS-如果有人想要测试的地方,只需将84f1bb99-7017-e8dc-94f9-5c179da9f102
放在剪贴板中,并在凭证will
/ will
的{{3}}上尝试一下。
答案 0 :(得分:0)
Clipboard copy无法在脚本中使用。它必须来自用户操作。
Similary,以同样的方式,您不能从小书签中调用全屏显示。
在Firefox控制台中:
document.execCommand(‘cut’/‘copy’) was denied because it was not
called from inside a short running user-generated event handler.