Мне необходимо при клике по диву записывать в буфер генерируемый текст.
Вся беда в том, что по клику левой кнопкой мыши все работает как и задумывалось, а правой кнопкой - копирования не происходит (в консоль выводится false).
document.querySelector('#box').addEventListener('click', copyFunc);
document.querySelector('#box').addEventListener('contextmenu', function(e) {
e.preventDefault();
copyFunc(e);
});
function copyFunc(e) {
var str = e.button === 0 ? 'Left click' : (e.button === 2 ? 'Right click' : 'Any text');
var el = document.createElement('textarea');
el.textContent = str;
el.value = str;
document.body.appendChild(el);
var selection = document.getSelection();
var range = document.createRange();
range.selectNode(el);
selection.removeAllRanges();
selection.addRange(range);
console.log(document.execCommand('copy'));
selection.removeAllRanges();
document.body.removeChild(el);
}
Нужно чтобы это работало в основных десктопных браузерах, хотя бы 2-летней давности.
Спасибо.