2015/08/14

[JavaScript]flashを使わずにクリップボードのコピーを行う

Material Design LiteのCOMPONENTSを読んでいたらflashを使っていないにもかかわらず、クリップボードにコピーすることができたんだけど、何故?

調べてみると、
Chrome 43からcutおよびcopyコマンドが使えます
を発見して、もともと
HTML5RockのCut and Copy Commandsでソースが公開されていました。

<p><textarea class="js-cuttextarea">Hello I'm some text</textarea></p>
  
<p><button class="js-textareacutbtn" disable>Cut Textarea</button></p>
var cutTextareaBtn = document.querySelector('.js-textareacutbtn');

cutTextareaBtn.addEventListener('click', function(event) {  
  var cutTextarea = document.querySelector('.js-cuttextarea');  
  cutTextarea.select();

  try {  
    var successful = document.execCommand('cut');  
    var msg = successful ? 'successful' : 'unsuccessful';  
    console.log('Cutting text command was ' + msg);  
  } catch(err) {  
    console.log('Oops, unable to cut');  
  }  
});
これ、githubとかにアップしていつでもコピペできるようにしたいなー。

0 コメント:

コメントを投稿