gpt4 book ai didi

jquery - 按键时将文本复制到剪贴板

转载 作者:行者123 更新时间:2023-12-04 15:52:09 25 4
gpt4 key购买 nike

可以使用此库将复制到剪贴板绑定(bind)到键盘快捷键吗?

所有 usage examples假设页面上有一个按钮并等待用户按下该按钮。但我需要用键盘触发它。

我的尝试甚至没有触发任何回调。我有一个触发器需要手动发出,但我找不到它:

jQuery(function($){
var $placeholder = $("div:first");
var clipboard = new ClipboardJS($placeholder[0]);

$("textarea").on("keyup", function(event){
var text;

if (event.key === "s") {
text = "Test / " + Math.round(1000000 * Math.random());
console.log("Copying '%s' to clipboard...", text);
$placeholder.attr("data-clipboard-text", text);

clipboard.on('success', function(e) {
console.info('Action:', e.action);
console.info('Text:', e.text);
console.info('Trigger:', e.trigger);
e.clearSelection();
});
clipboard.on('error', function(e) {
console.error('Action:', e.action);
console.error('Trigger:', e.trigger);
});
// And now what?
}
})
});
textarea{
width: 100%;
color: red;
}
textarea:focus{
color: green;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/clipboard@2/dist/clipboard.min.js"></script>
<textarea>Type "s" here to save some text to clipboard. Then use Ctrl+V to see if it worked.</textarea>
<div></div>

最佳答案

我想我找到了我遗漏的要点。我基本上需要自己触发点击事件。我已经更换了我的 <div>占位符更明显:

jQuery(function($){
var $dummyButton = $("button:first");
var clipboard = new ClipboardJS($dummyButton[0]);
clipboard.on('success', function(e) {
console.info('Action:', e.action);
console.info('Text:', e.text);
console.info('Trigger:', e.trigger);
e.clearSelection();
});
clipboard.on('error', function(e) {
console.error('Action:', e.action);
console.error('Trigger:', e.trigger);
});

$("textarea").on("keyup", function(event){
var text;

if (event.key === "s") {
text = "Test / " + Math.round(1000000 * Math.random());
console.log("Copying '%s' to clipboard...", text);
$dummyButton.attr("data-clipboard-text", text);

$dummyButton.trigger("click");
}
})
});
textarea{
width: 100%;
color: red;
}
textarea:focus{
color: green;
}
button {
display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/clipboard@2/dist/clipboard.min.js"></script>
<textarea>Type "s" here to save some text to clipboard. Then use Ctrl+V to see if it worked.</textarea>
<button>Dummy button</button>

这适用于 Firefox、Chrome、Edge、IE11 等桌面浏览器(此浏览器会征求用户的许可)以及可能的许多其他浏览器。

关于jquery - 按键时将文本复制到剪贴板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53444494/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com