Gab*_*lli 82 javascript clipboard paste
我想知道一种方法,让我的脚本检测剪贴板的内容,并在打开页面时将其粘贴到文本字段中,而无需用户输入.怎么做到呢?
Dav*_*ave 66
window.clipboardData.getData('Text')将在某些浏览器中工作.但是,它工作的许多浏览器将提示用户他们是否希望网页能够访问剪贴板.
iul*_*net 40
根据您何时阅读此内容,可以通过以下方式使用新的剪贴板APInavigator.clipboard.它可以像这样使用:
navigator.clipboard.readText()
.then(text => {
console.log('Pasted content: ', text);
})
.catch(err => {
console.error('Failed to read clipboard contents: ', err);
});
Run Code Online (Sandbox Code Playgroud)
或者使用异步语法:
const text = await navigator.clipboard.readText();
请记住,这将提示用户具有权限请求对话框,因此不幸的是没有有趣的业务.
Ric*_*iao 16
您可以使用
window.clipboardData.getData('Text')
Run Code Online (Sandbox Code Playgroud)
在IE中获取用户剪贴板的内容.但是,在其他浏览器中,您可能需要使用闪存来获取内容,因为没有标准接口来访问剪贴板.也许你可以尝试这个插件零剪贴板
小智 7
以下将为您提供所选内容以及更新剪贴板。
将元素id与复制事件绑定,然后获取选定的文本。您可以替换或修改文本。获取剪贴板并设置新文本。要获得准确的格式,您需要将类型设置为“text/html”。您还可以将其绑定到文档而不是元素。
document.querySelector('element').bind('copy', function(event) {
var selectedText = window.getSelection().toString();
selectedText = selectedText.replace(/\u200B/g, "");
clipboardData = event.clipboardData || window.clipboardData || event.originalEvent.clipboardData;
clipboardData.setData('text/html', selectedText);
event.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
152875 次 |
| 最近记录: |