[英]How can I copy a specific part of a URL to the clipboard with a Chrome extension?
[英]How can I copy to clipboard specific part of paragraph?
我想制作該方法,或僅將段落的“語法”部分復制到剪貼板。 我已經完成了獲取所需內容的特定部分的邏輯,並將其存儲在變量“ syntaxClean”中。 現在,我只需要以某種方式復制它。
document.execCommand(“ copy”); 會很棒,但是我似乎無法使它正常工作。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Test</title> </head> <body> <pre id="test"></pre> <script> const message = "====== Executor details =======\\nathena@21.109.21.25 (tunneled:39516)\\n====== Request details ========\\nClass....................: com.ericsson.athena.taf.os.linux.commands.common.SimpleCmdRequest\\nThread : ................: main\\nExpected prompt..........: ^((?![<?]|\\\\\\\\.{3}|(\\\\\\\\S+\\\\\\\\s){6,}).)*[>#$%]+(\\\\\\\\\\\\\\\\\\\\\\\[(\\\\\\\\d;?)*[m|n|K])*\\\\\\\\s(\\\\\\\\\\\\\\\\\\\\\\\[(\\\\\\\\d;?)*[m|n|K])*$|#\\\\\\\\s\\\\\\\\\\\\\\\[6n\\nPrompt forced............: false\\nTimeout..................: 20000ms\\nSyntax...................: lsb_release -i\\n" document.getElementById("test").append(message); var res = message.split("\\n"); for (var i in res) { if (res[i].indexOf("Syntax") != -1) { var syntax = res[i].split(':'); var syntaxClean = syntax[1].slice(1); console.log(syntaxClean); } } </script> </body> </html>
在這個示例中,我想復制到剪貼板“ lsb_release -i”,並將其存儲在變量syntaxClean中,如上所述。
任何幫助表示贊賞!
您可以通過創建一個偽文本區域來實現此目的,如下所示:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Test</title> </head> <body> <pre id="test"></pre> <button onclick="copy()">Copy</button> <script> const message = "====== Executor details =======\\nathena@21.109.21.25 (tunneled:39516)\\n====== Request details ========\\nClass....................: com.ericsson.athena.taf.os.linux.commands.common.SimpleCmdRequest\\nThread : ................: main\\nExpected prompt..........: ^((?![<?]|\\\\\\\\.{3}|(\\\\\\\\S+\\\\\\\\s){6,}).)*[>#$%]+(\\\\\\\\\\\\\\\\\\\\\\\[(\\\\\\\\d;?)*[m|n|K])*\\\\\\\\s(\\\\\\\\\\\\\\\\\\\\\\\[(\\\\\\\\d;?)*[m|n|K])*$|#\\\\\\\\s\\\\\\\\\\\\\\\[6n\\nPrompt forced............: false\\nTimeout..................: 20000ms\\nSyntax...................: lsb_release -i\\n" document.getElementById("test").append(message); function copy() { var res = message.split("\\n"); for (var i in res) { if (res[i].indexOf("Syntax") != -1) { var syntax = res[i].split(':'); var syntaxClean = syntax[1].slice(1); console.log(syntaxClean); copyToClipboard(syntaxClean); } } } function copyToClipboard(text) { var dummyElm = document.createElement("textarea"); document.body.appendChild(dummyElm); dummyElm.value = text; dummyElm.select(); document.execCommand("copy"); document.body.removeChild(dummyElm); } </script> </body> </html>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.