簡體   English   中英

使用JavaScript將所選文本復制並粘貼到剪貼板

[英]Copy and paste the selected text to the clipboard using JavaScript

我正在為我的系統構建一個自定義右鍵單擊菜單,我需要知道如何創建一個JavaScript函數來復制所選文本,基本上100%就像原始的右鍵單擊菜單一樣。

我知道Flash的解決方法。 我想在JavaScript中這樣做。

到目前為止我看到的每個答案只是半答案,因為它們都沒有解釋如何為所選文本制作復制按鈕 - 他們所做的只是復制預定義的文本或文本框中的文本。

Modern Day Browsers阻止訪問剪貼板。 用戶必須正確安全設置。

有閃光燈解決方案 ,但它們並不是最好的。

對於非IE瀏覽器,您很可能必須使用閃存解決方案。 但是對於IE,這種方法非常有效:

function copyToClipboard(s) {           //only works in IE :(
    if (window.clipboardData && clipboardData.setData) {
        clipboardData.setData('text', s);
    }
}

不知道這是否有效,但谷歌搜索產生了:

function getSel(){
  var w=window,d=document,gS='getSelection';
  return (''+(w[gS]?w[gS]():d[gS]?d[gS]):d.selection.createRange().text)).replace(/(^\s+|\s+$)/g,'');
}

http://snippets.dzone.com/posts/show/2914

一個可行的跨瀏覽器方法(減去iOS)將使用ExternalInterfacesetClipboard 所以你會有一個swf,flash文件,只能監聽你從Javascript調用的函數來設置clipBoard。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM