Javascript-无法使用contextmenu EventListener复制到剪贴板(右键单击复制到剪贴板)

时间:2018-11-22 10:22:44

标签: javascript clipboard event-listener

function copyTextToClipboard(text) {
    var textArea = document.createElement("textarea");
    textArea.style.position = 'fixed';
    textArea.style.top = 0;
    textArea.style.left = 0;
    textArea.style.width = '2em';
    textArea.style.height = '2em';
    textArea.style.padding = 0;
    textArea.style.border = 'none';
    textArea.style.outline = 'none';
    textArea.style.boxShadow = 'none';
    textArea.style.background = 'transparent';
    textArea.value = text;
    document.body.appendChild(textArea);
    textArea.select();
    document.execCommand('copy');
    document.body.removeChild(textArea);
}

var allOrders = document.getElementsByClassName('infoRow');
for (var i = 0; i < allOrders.length; i++)
{
    allOrders[i].addEventListener('contextmenu', function(e){
        e.preventDefault();
        copyTextToClipboard('test');
    });
}   

在特定div上单击鼠标右键时,我正在尝试将“测试”复制到剪贴板。我认为它不起作用,因为javascript不会将右键单击视为用户启动的事件。当我将EventListener更改为“ click”时,代码起作用了,但是我想右键单击。

0 个答案:

没有答案