SORU
30 Aralık 2008, Salı


Nasıl JavaScript panoya kopyalamak mı?

Metni panoya kopyalamak için en iyi yolu nedir? (e-posta)

Denedim:

function copyToClipboard(text) {
    if (window.clipboardData) { // Internet Explorer
        window.clipboardData.setData("Text", text);
    } else {  
        unsafeWindow.netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");  
        const clipboardHelper = Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);  
        clipboardHelper.copyString(text);
    }
}

ama Internet Explorer içinde bir sözdizimi hatası veriyor. Firefox, unsafeWindow is not defined diyor.

EditFlash olmadan güzel bir püf noktası: How does Trello access the user's clipboard?

CEVAP
19 Mayıs 2011, PERŞEMBE


Panoya otomatik kopyalama tehlikeli olabilir, bu nedenle çoğu tarayıcı (IE hariç) çok zor. Kişisel olarak, aşağıdaki basit hile kullanıyorum:

function copyToClipboard(text) {
  window.prompt("Copy to clipboard: Ctrl C, Enter", text);
}

Kullanıcı kopyalanacak metin seçilir istemi kutusu ile sunulmaktadır. Şimdi basmanız yeterliCtrlCveGirin(kutusunu kapatmak için) ve vala!

Şimdi panoya kopyala işlemi kullanıcı tarafından el ile (ama çok basit bir şekilde) çünkü güvenlidir. Tabii ki, tüm tarayıcılarda çalışır.

<button id="demo" onclick="copyToClipboard(document.getElementById('demo').innerHTML)">This is what I want to copy</button>

<script>
  function copyToClipboard(text) {
    window.prompt("Copy to clipboard: Ctrl C, Enter", text);
  }
</script>

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Kayla Caton - Peet

    Kayla Caton

    23 HAZİRAN 2012
  • Living Waters

    Living Water

    9 AĞUSTOS 2006
  • Matus Slovak

    Matus Slovak

    5 Temmuz 2007