整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          原生 js 實現點擊按鈕復制文本

          作者:JavaScript前端(梓超)
          注:此文章為頭條號原創,特此聲明!
          

          一、原理分析

          瀏覽器提供了 copy 命令 ,可以復制選中的內容

          document.execCommand("copy")
          

          如果是輸入框,可以通過 select() 方法,選中輸入框的文本,然后調用 copy 命令,將文本復制到剪切板

          但是 select() 方法只對 <input> 和 <textarea> 有效,對于 <p> 就不好使

          最后我的解決方案是,在頁面中添加一個 <textarea>,然后把它隱藏掉

          點擊按鈕的時候,先把 <textarea> 的 value 改為 <p> 的 innerText,然后復制 <textarea> 中的內容

          二、代碼實現

          HTML 部分

          按 Ctrl+C 復制代碼

          按 Ctrl+C 復制代碼

          JS 部分

           <script type="text/javascript">
           function copyText() {
           var text = document.getElementById("text").innerText;
           var input = document.getElementById("input");
           input.value = text; // 修改文本框的內容
           input.select(); // 選中文本
           document.execCommand("copy"); // 執行瀏覽器復制命令
           alert("復制成功");
           }
           </script>
          

          親測,Firefox 48.0,Chrome 60.0,IE 8 都能用

          推薦閱讀:

          最好的JavaScript數據可視化庫都在這里了

          js 中原型和原型鏈深入理解

          JavaScript基礎知識系列:不再彷徨:完全弄懂JavaScript中的this

          最好的JavaScript數據可視化庫都在這里了

          JavaScript基礎知識系列:判斷類型(上)

          ello,大家好,前段時間做舔狗日記小程序,需要一鍵復制,看了下文檔,小程序自帶復制功能,那么網頁js如何實現復制功能呢?


          首先,我查了下,貌似可以實現對input和textarea等文本輸入框可以實現選中復制,針對div,p等標簽不可以,那么我們需要新建一個文本框標簽,不能給display:none; 我們需要懟他進行一個定位,讓透明看不見找不到,點擊復制,將需要復制的內容賦值給文本框,接著對文本框進行全選,在進行復制操作即可,代碼如下:

          Markup

          <p id="content">前端共享博客-專注前端行業精選- sharedblog.cn</p>
          <textarea id="text" style="position: fixed;top: 10000px;left: 10000px;opacity: 0;"></textarea>
          <button id="CopyBtn">復制</button>

          JavaScript

          網頁開發中,實現復制功能是一項常見的需求。本文將介紹如何使用JavaScript實現網頁上的復制功能,為您揭秘這一實用技巧。

          步驟一:創建復制按鈕

          首先,在HTML文件中創建一個按鈕,并設置一個唯一的id,用于后續的處理。

          <button id="copyButton">復制文本</button>

          步驟二:編寫復制函數

          接著,在JavaScript中編寫復制函數,該函數將實現復制功能。

          document.getElementById("copyButton").addEventListener("click", function() {
           // 希望復制的文本內容
           var text = "要復制的文本內容";
           // 創建一個元素
           var input = document.createElement("input");
           input.setAttribute("value", text);
           // 將元素追加到頁面中
           document.body.appendChild(input);
           // 選中元素中的文本內容
           input.select();
           // 執行復制操作
           document.execCommand("copy");
           // 移除元素
           document.body.removeChild(input);
           // 顯示復制成功提示
           alert("復制成功!");
          });

          步驟三:測試程序

          我們嘗試運行程度,然后點擊一下復制按鈕;

          運行結果:

          至此,我們已完成了JavaScript實現網頁復制功能的所有步驟。

          在實際運用中,您可以根據需要對復制功能進行改進,例如添加復制成功的提示、處理異常情況等。通過掌握這一技巧,您可以為用戶提供更好的交互體驗。

          注意:

          請在合適的時機將代碼部署到實際環境中進行測試。

          確保在使用execCommand("copy")方法時,瀏覽器攔截器或插件不會阻止復制操作。

          部分移動設備瀏覽器可能不支持execCommand方法,因此請根據實際情況進行兼容性處理。


          主站蜘蛛池模板: 无码精品久久一区二区三区| 波多野结衣av高清一区二区三区| 国产精品亚洲一区二区在线观看| 日韩人妻无码一区二区三区99 | 久久久av波多野一区二区| 少妇一晚三次一区二区三区| 一区二区三区在线观看中文字幕 | 伊人久久精品无码麻豆一区 | 少妇一夜三次一区二区| 亚洲日本一区二区三区在线| 四虎一区二区成人免费影院网址| 国产短视频精品一区二区三区| 三上悠亚日韩精品一区在线| 在线视频精品一区| 日韩精品一区二区亚洲AV观看| 精品亚洲一区二区三区在线播放| 国产萌白酱在线一区二区| 精品人妻一区二区三区浪潮在线| 日本一区二区不卡视频| 精品人妻少妇一区二区三区在线| 日韩毛片一区视频免费| 国产精品乱码一区二区三| 亚洲AV无码一区二区三区久久精品 | 日韩电影一区二区| 成人无码AV一区二区| 国模丽丽啪啪一区二区| 97精品国产福利一区二区三区| 国产精品主播一区二区| 熟女少妇丰满一区二区| 日韩人妻无码一区二区三区久久99 | 亚洲午夜福利AV一区二区无码| 东京热无码av一区二区| 亚洲一区二区三区在线视频| 变态调教一区二区三区| 久久国产精品免费一区二区三区| 久久久久国产一区二区| 国产成人AV一区二区三区无码| 一区二区视频在线| 亚洲综合在线一区二区三区| 日韩一区在线视频| 国偷自产Av一区二区三区吞精 |