我有一个基于React的应用程序,它使用剪贴板来复制文本。该文本可能包含换行符。当我稍后将此文本粘贴到此应用程序或Word中时,换行符在那里,但是当复制到记事本时,它会变成一行。
我用于复制的代码是
setText = function (text) {
var node = document.createElement('span');
node.style.position = 'absolute';
node.style.left = '-10000px';
text = escape(text).replace(/\r/g, '<br/>');
node.innerHTML = text;
document.body.appendChild(node);
Clipboard._copyNode(node);
document.body.removeChild(node);
}
我需要使用span来支持可访问性,以前我有textarea,但这不适用于可访问性。
我尝试了多个正则表达式,例如(/ \ r / g,'
\ n')或(/ \ n \ r | \ r \ n | \ n | \ r / g,'< br />”),但它们都不能与记事本一起使用。
为什么记事本与Word不同?它还可以在Visual Studio Code,Gmail,Sublime ...中使用。
感谢您的帮助。