How TO – Copy Text to Clipboard
Learn how to copy text to the clipboard with JavaScript.
Click on the button to copy the text from the text field.
Copy Text to Clipboard
Step 1) Add HTML:
Example
<!– The text field –>
<input type=”text” value=”Hello World” id=”myInput”>
<!– The button used to copy the text –>
<button onclick=”myFunction()”>Copy text</button>
Step 2) Add JavaScript:
Example
<!DOCTYPE html>
<html>
<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”>
<button onclick=”myFunction()”>Copy text</button>
<script>
function myFunction() {
// Get the text field
var copyText = document.getElementById(“myInput”);
// Select the text field
copyText.select();
copyText.setSelectionRange(0, 99999); // For mobile devices
// Copy the text inside the text field
navigator.clipboard.writeText(copyText.value);
// Alert the copied text
alert(“Copied the text: ” + copyText.value);
}
</script>
</body>
</html>
Display Copied Text in a Tooltip
Add CSS:
Example
<!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>
<button onclick=”myFunction()” onmouseout=”outFunc()”>
<span 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>