Bookmarklet用于从剪贴板内容制作URL

问题描述 投票:7回答:1

我正在尝试使Bookmarklet从剪贴板中获取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

我的问题是:是否适用于Bookmarklet中的任何技术?如果是这样,我将不胜感激。我在Javascript方面的技能太低,无法理解如何将这些答案转换为我的案例 - 即异步的东西。

PS - 如果有人想要一个地方来测试这个,只需将84f1bb99-7017-e8dc-94f9-5c179da9f102放入你的剪贴板并在这个demo site上尝试,凭据will / will

javascript clipboard bookmarklet
1个回答
0
投票

Clipboard copy无法使用脚本。它必须来自用户操作。

相似,以同样的方式,您无法从书签中调用全屏。

从Firefox控制台:

document.execCommand(‘cut’/‘copy’) was denied because it was not
called from inside a short running user-generated event handler.
© www.soinside.com 2019 - 2024. All rights reserved.