Eingabefeld als Button
bearbeitet von Rolf BHallo Gunnar,
ich dachte ich hätte eine Lösung, aber sie geht nur mit Chrome, nicht mit Firefox. Der Fuchs kopiert nur den Span, nicht den Button. Sehr merkwürdig. Den IE habe ich nicht getestet (weil jsFiddle und Codepen unter IE streiken).
Aber vielleicht kannst Du dem Fuchs mit einem versteckten Eingabefeld nachhelfen, in das Du den Buttontext kopierst.
~~~html
<button class="click2copy">Copy me</button>
<span class="click2copy">Don't make a clickable span!</span>
~~~
~~~js
document.body.addEventListener("click", click2copyListener);
function click2copyListener(event) {
if (!event.target.classList.contains("click2copy")) return;
// IE ab Version 9
if (window.getSelection) {
let selection = window.getSelection();
let range = document.createRange();
range.selectNode(event.target);
selection.removeAllRanges();
selection.addRange(range);
document.execCommand("copy");
selection.removeAllRanges();
}
}
~~~
_Rolf_
--
sumpsi - posui - clusi