Heim  >  Artikel  >  Backend-Entwicklung  >  javascript - 求教一个js拷贝文本的问题

javascript - 求教一个js拷贝文本的问题

WBOY
WBOYOriginal
2016-06-06 20:22:571030Durchsuche

就是简单的点击拷贝,好像很多网站都有复制代码这个按钮。但是好像说很多浏览器不支持,要用flash,现在这个问题一般都是怎么解决的

回复内容:

就是简单的点击拷贝,好像很多网站都有复制代码这个按钮。但是好像说很多浏览器不支持,要用flash,现在这个问题一般都是怎么解决的

long ago都是需要引入flash通过调用flash的api访问clipboard的,巨恶心..既然现在abobe自己都不推荐flash了,自然有办法。

https://zenorocha.github.io/clipboard.js/
depende on Selection and document.execCommand API

<code class="javascript"><script>
function CopyAll(T)
{
T.focus()
T.select()
if (document.all){
therange=T.createTextRange()
therange.execCommand("Copy") //复制
}
}
</script>
<input type="BUTTON" value="复制" onclick="CopyAll(text1)">
<textarea name="text1" cols="40" rows="5">(内容测试)</textarea>
<textarea cols="40" rows="5">(你可以在这里粘帖内容)</textarea></code>

he JavaScript document.execCommand('copy') support has grown, see the links below for browser updates:

IE10+ (although this document indicates some support was there from IE5.5+).
Google Chrome 43+ (~April 2015)
Mozilla Firefox 41+ (shipping ~September 2015)
Opera 29+ (based on Chromium 42, ~April 2015)
Simple Example
var copyTextareaBtn = document.querySelector('.js-textareacopybtn');

copyTextareaBtn.addEventListener('click', function(event) {
var copyTextarea = document.querySelector('.js-copytextarea');
copyTextarea.select();

try {

<code>var successful = document.execCommand('copy');
var msg = successful ? 'successful' : 'unsuccessful';
console.log('Copying text command was ' + msg);</code>

} catch (err) {

<code>console.log('Oops, unable to copy');</code>

}
});





详见http://stackoverflow.com/questions/400212/how-do-i-copy-to-the-clipboard-in-javascript

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn