![](/img/trans.png)
[英]having trouble with a simple copy and paste function in google scripts
[英]Simple copy paste function in JavaScript
如何對 JavaScript 中的文本進行簡單的復制和粘貼? 我想實現的是,當我 select 文本區域中的一些textarea
時,我可以單擊一個按鈕將其復制,然后我可以 go 到另一個頁面右鍵單擊另一個textarea
並選擇粘貼。
看看這個庫: https : //github.com/zeroclipboard/zeroclipboard
您無法在 JavaScript 中訪問剪貼板,這意味着 Flash 或多或少是您唯一的選擇。
嘗試這個:
function copy() { if(window.clipboardData) { window.clipboardData.clearData(); window.clipboardData.setData("Text", document.getElementById('txToCopy').value); } } function paste() { if(window.clipboardData) { document.getElementById('txToPaste').value = window.clipboardData.getData("Text"); } }
<a href="javascript:copy();">Copy</a> <br /> <input type="text" name="txToCopy" id ="txToCopy"/> <br /><br /> <a href="javascript:paste();">Paste</a> <br /> <input type="text" name="txToPaste" id="txToPaste"/>
這是一個簡單的復制和粘貼功能。 它在 IE 中運行良好。
我希望它能幫助你。
我認為最簡單的方法(並在所有瀏覽器中工作)是觀察用戶按下的鍵,如果他按下 CTRL+C,保存一些你想復制到某個變量中的數據。
我的意思是這樣的:
var myClipboardVariable;
document.onkeyup = function(e){
if ((e.key == 'c') && e.ctrlKey){
// save data (you want to copy) into variable
myClipboardVariable = ....//some data
}
if ((e.key == 'v') && e.ctrlKey){
// paste saved data
.... paste your data from variable myClipboardVariable
}
}
假設您想獲取用戶鍵盤操作,您可能想使用熱鍵: https : //github.com/jeresig/jquery.hotkeys
看看這篇 MDN 文章。
如果您只想復制用戶選擇的文本,您可以:
document.execCommand("copy");
如果您需要之前選擇它:
document.getElementById('txToPaste').select();
在我的情況下,此代碼不起作用 - 結果select()
不適用於disabled
輸入。
如果您從onClick
事件偵聽器運行它,則不需要任何特殊權限,如果您希望另一個事件觸發副本,您就有點麻煩了。
它在 Firefox 和 chrome 上對我有用,MDN 說它對 safari 不起作用,但我還沒有測試過。
您可以為此使用剪貼板 API,
//copy
navigator.clipboard.writeText("yuuhhhh");
//paste ,this needs user permission
navigator.clipboard.readText()
現在你可以使用.then function 做任何你想做的事。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.