2010-08-06 4 views
2


Я ищу функцию javascript, которая может копировать содержимое из TextArea в буфер обмена. На платформе microsoft функция работает нормально, но она не работает, когда я переключаюсь на платформу, отличную от Microsoft, например, FireFox или Safari.
Я назвал это link для функции.Скопируйте текст из TextArea в буфер обмена, используя JavaScript на платформах, отличных от Microsoft.


Если кто-нибудь знает решение для этого, пожалуйста, помогите мне.
Заранее спасибо.

+0

Дубликат: http://stackoverflow.com/questions/127040/copy-put-text-on-the-clipboard-with-firefox-safari-and-chrome и http://stackoverflow.com/questions/ 2072026/copy-to-clipboard-not-working-on-firefox – RoToRa

+0

, но решения, которые предоставляются и принимаются для этих вопросов, не работают. Поэтому я решил переустановить его, чтобы получить лучшие решения. –

ответ

0

Чистое решение JavaScript для копирования содержимого текстового поля в буфер обмена, когда пользователь нажимает на текстовое поле:

<script> 

function copySelectionText(){ 
    var copysuccess // var to check whether execCommand successfully executed 
    try{ 
     copysuccess = document.execCommand("copy") // run command to copy selected text to clipboard 
    } catch(e){ 
     copysuccess = false 
    } 
    return copysuccess 
} 

function copyfieldvalue(e, id){ 
    var field = document.getElementById(id) 
    field.select() 
    var copysuccess = copySelectionText() 
} 

var bio = document.getElementById('mybio') 
bio.addEventListener('mouseup', function(e){ 
    copyfieldvalue(e, 'mybio') 
    var copysuccess = copySelectionText() // copy user selected text to clipboard 
}, false) 

</script> 

Примечание: Если вы хотите скопировать только часть содержимого текстовой области в буфер обмена , в учебнике Reading and copying selected text to clipboard using JavaScript есть дополнительная информация.