Reputation: 409
hi everyone, i want copy button in my mobile website and i have implement it with JS, it works fine for android but on ios text not copying, is there any way to copy textarea text on ios safari ?
this is my code which worked on android browser
var input = document.getElementById("input_output"); var button = document.getElementById("copy-button"); button.addEventListener("click", function (event) { event.preventDefault(); input.select(); document.execCommand("copy"); });
Thanks
Upvotes: 0
Views: 4138
Reputation: 1069
You can try this it will work for Ios and other Browsers.
button.addEventListener("click", function (event) {
event.preventDefault();
if (navigator.userAgent.match(/ipad|ipod|iphone/i)) {
var $input = $('#input_output');
$input.val();
var el = $input.get(0);
var editable = el.contentEditable;
var readOnly = el.readOnly;
el.contentEditable = true;
el.readOnly = false;
var range = document.createRange();
range.selectNodeContents(el);
var sel = window.getSelection();
sel.removeAllRanges();
sel.addRange(range);
el.setSelectionRange(0, 999999);
el.contentEditable = editable;
el.readOnly = readOnly;
var successful = document.execCommand('copy');
$input.blur();
var msg = successful ? 'successful ' : 'un-successful ';
}
else{
var copyTextarea = document.querySelector('#input_output');
copyTextarea.select();
var successful = document.execCommand('copy');
var msg = successful ? 'successful ' : 'unsuccessful';
}
});
Upvotes: 3