原生js實現點選按鈕複製內容到剪下板
阿新 • • 發佈:2020-11-20
本文例項為大家分享了js點選按鈕複製內容到剪下板的具體程式碼,供大家參考,具體內容如下
效果圖
上程式碼
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1.0"> <title>Document</title> </head> <style> .divBox { width: 500px; margin: 100px auto; display: flex; } .popupStyle { display: none; width: 160px; background-color: rgb(85,85,85); color: aqua; text-align: center; border-radius: 6px; padding: 8px 0; position: fixed; z-index: 1; top: 2%; left: 50%; margin-left: -80px; } </style> <body> <div class="divBox"> <div id="div">這是要複製的div內容</div> <a href="#" onclick="handleDivCopy()">點選複製</a> </div> <div class="divBox"> <textarea id="textarea">Hello,World</textarea> <a href="#" onclick="handleCopy()">點選複製</a> </div> <script> // 複製 div 內容 function handleDivCopy() { const div = document.getElementById("div"); const input = document.createElement("input"); document.body.appendChild(input); input.value = div.innerText; input.select(); try { if (document.execCommand("copy",false)) { handleDomMsg("div 內容複製成功"); } else { handleDomMsg("div 內容複製失敗"); } } catch (error) { console.log(error,"error") } finally { input.remove(); } }; // 複製輸入框內容 function handleCopy() { const textarea = document.getElementById("textarea"); textarea.select(); try { if (document.execCommand("copy",false)) { handleDomMsg("輸入框內容複製成功"); } else { handleDomMsg("輸入框內容複製失敗"); } } catch (error) { console.log(error,"error") } }; // DOM 彈窗 function handleDomMsg(message) { const div = document.createElement("div"); document.body.appendChild(div); div.innerHTML = message || "this is a Message"; div.className = "popupStyle"; div.style.display = "block"; setTimeout(() => { div.remove(); },1000); } </script> </body> </html>
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。