在JavaScript中处理剪切板主要涉及到Clipboard API
,这是一个现代的、基于Promise的API,用于读取和写入剪切板内容。以下是一些基础概念和相关信息:
async function copyToClipboard(text) {
try {
await navigator.clipboard.writeText(text);
console.log('Text copied to clipboard');
} catch (err) {
console.error('Failed to copy text: ', err);
}
}
copyToClipboard('Hello, World!');
async function pasteFromClipboard() {
try {
const text = await navigator.clipboard.readText();
console.log('Text from clipboard: ', text);
} catch (err) {
console.error('Failed to read text: ', err);
}
}
pasteFromClipboard();
document.execCommand('copy')
和document.execCommand('paste')
来处理复制和粘贴操作。function fallbackCopyTextToClipboard(text) {
const textArea = document.createElement('textarea');
textArea.value = text;
document.body.appendChild(textArea);
textArea.focus();
textArea.select();
try {
const successful = document.execCommand('copy');
const msg = successful ? 'successful' : 'unsuccessful';
console.log('Fallback: Copying text command was ' + msg);
} catch (err) {
console.error('Fallback: Oops, unable to copy', err);
}
document.body.removeChild(textArea);
}
function fallbackPasteFromClipboard() {
const textArea = document.createElement('textarea');
document.body.appendChild(textArea);
textArea.focus();
try {
const successful = document.execCommand('paste');
const text = successful ? textArea.value : '';
console.log('Fallback: Pasted text: ', text);
return text;
} catch (err) {
console.error('Fallback: Oops, unable to paste', err);
}
document.body.removeChild(textArea);
return '';
}
通过这些方法和示例代码,你可以有效地在JavaScript中处理剪切板操作。
领取专属 10元无门槛券
手把手带您无忧上云