我有一个textarea,显示共享链接。它在Chrome和Mozilla上运行正常,但在IE文本中无法选择(因此无法复制)。你可以编辑它(删除和写入)。
我添加了textarea:
exports.setTextArea = function(url) {
$('.share .clipboard textarea').text(url);
$('.share .clipboard textarea').height(1);
window.setTimeout(function(){$('.share .clipboard textarea').height($('.share .clipboard textarea')[0].scrollHeight);}, 0);
}
exports.copyResult = function() {
$('.share .clipboard textarea').focus();
$('.share .clipboard textarea')[0].setSelectionRange(0, 9999);
document.execCommand('copy');
}
$(function () {
$('.share .exit-btn').on('click touchstart', shareControl.close);
$('.share textarea').keydown(function(e){
if (e.keyCode == 65 && e.ctrlKey) {
e.target.select()
}
});
});

textarea {
width: 100%;
max-height: 230px;
resize: none;
overflow: auto;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
}

<div class="clipboard">
<textarea id="textarea"></textarea>
</div>
&#13;
是不是导致问题的javascript?我用它在textarea中生成textm set文本,并将其复制到剪贴板。
编辑:我发现无论我在哪里放置,这个问题仍然存在。虽然它在jsfiddle.net上测试时可以正常使用,但它显然适用于IE和Edge
答案 0 :(得分:0)
更改后:
<body onload="htmlInit('XYZ');" onselectstart="if ((event.target || event.srcElement).nodeName !== 'INPUT') return false;"...>
到此:
<body onload="htmlInit('XYZ');" onselectstart="if ((event.target || event.srcElement).nodeName !== 'INPUT' && (event.target || event.srcElement).nodeName !== 'TEXTAREA') return false;"...>
textarea按预期工作