hidden text forced copy

dd

by Daehyun Im

HTML

Copy This!
<div id='test' style='display:none;'>it's fake haha</div>

<input type='button' onclick='copy("test")' value='copy' />

CSS

body {
  height:200px;
}

JavaScript

function copy(id) {
	let clip = document.getElementById(id);
  
  clip.style.display='block';

  if(document.body.createTextRange) {
    let range = document.body.createTextRange();
    range.moveToElementText(clip);
    range.select();
    document.execCommand("Copy");
    alert("Copied");
    document.selection.empty();
  }
  else if(window.getSelection) {
    let selection = window.getSelection();
    let range = document.createRange();
    range.selectNodeContents(clip);
    selection.removeAllRanges();
    selection.addRange(range);
    document.execCommand("Copy");
    alert("Copied");
    selection.removeAllRanges();
  }
  
  clip.style.display='none';
}