Monday, 1 November 2021

How TO - Copy Text to Clipboard

how to copy text to the clipboard with JavaScript.

Click on the button to copy the text from the text field. Try to paste the text (e.g. ctrl+v) afterwards in a different window, to see the effect.

<!DOCTYPE html>

<html>

<head>

<meta name="viewport" content="width=device-width, initial-scale=1">

<style>

.tooltip {

  position: relative;

  display: inline-block;

}


.tooltip .tooltiptext {

  visibility: hidden;

  width: 140px;

  background-color: #555;

  color: #fff;

  text-align: center;

  border-radius: 6px;

  padding: 5px;

  position: absolute;

  z-index: 1;

  bottom: 150%;

  left: 50%;

  margin-left: -75px;

  opacity: 0;

  transition: opacity 0.3s;

}


.tooltip .tooltiptext::after {

  content: "";

  position: absolute;

  top: 100%;

  left: 50%;

  margin-left: -5px;

  border-width: 5px;

  border-style: solid;

  border-color: #555 transparent transparent transparent;

}


.tooltip:hover .tooltiptext {

  visibility: visible;

  opacity: 1;

}

</style>

</head>

<body>


<p>Click on the button to copy the text from the text field. Try to paste the text (e.g. ctrl+v) afterwards in a different window, to see the effect.</p>


<input type="text" value="Hello World" id="myInput">


<div class="tooltip">

<button onclick="myFunction()" onmouseout="outFunc()">

  <span class="tooltiptext" id="myTooltip">Copy to clipboard</span>

  Copy text

  </button>

</div>


<script>

function myFunction() {

  var copyText = document.getElementById("myInput");

  copyText.select();

  copyText.setSelectionRange(0, 99999);

  navigator.clipboard.writeText(copyText.value);

  

  var tooltip = document.getElementById("myTooltip");

  tooltip.innerHTML = "Copied: " + copyText.value;

}


function outFunc() {

  var tooltip = document.getElementById("myTooltip");

  tooltip.innerHTML = "Copy to clipboard";

}

</script>

</body>

</html>

 

No comments:

Post a Comment