保留用户选择的文本上的换行符。目前正在尝试使用 window.getSelection()

问题描述 投票:0回答:2
cl_in = window.getSelection().toString();
alert(cl_out);  //Multiline selections stored without \r or \n

输入:
“您好,
留言,
谢谢”

电流输出: “您好,留言,谢谢”。

我的要求是能够在屏幕上选择一些包含换行符的文本,并将数据与换行符信息一起存储以供解析。 我不需要维护格式或任何特定元素。只是纯文本选择和多行支持。

我不关心换行符是否需要替换为要存储在字符串中的不同字符。或者如果需要将字符串分解为数组。任何允许我维护换行数据的可能解决方案都可以。

getSelection().toString() 似乎没有保存任何 或者 信息。

编辑:如果相关的话,这是greasemonkey中的javascript。

谢谢你。

tostring multiline getselection
2个回答
0
投票

刚刚解决了这个问题,以防其他人仍然想知道:您需要使用

textarea
元素而不是 div 或 input 元素,以便在复制时保留换行符。


0
投票

我也遇到了类似的问题,可以通过使用正则表达式用中断替换换行符来解决它。

.replace( /(\r\n|\r|\n)/g, '<br>' );
并在将内容插入 dom 时使用
innerHTML
而不是
innerText

© www.soinside.com 2019 - 2024. All rights reserved.