我有一个 Javascript 例程,它通过格式化为 HTML 的用户检索选择文本:
function getHTMLOfSelection() {
var range;
if (document.selection && document.selection.createRange) {
range = document.selection.createRange();
return range.htmlText;
}
else if (window.getSelection) {
var selection = window.getSelection();
if (selection.rangeCount > 0) {
range = selection.getRangeAt(0);
var clonedSelection = range.cloneContents();
var div = document.createElement('div');
div.appendChild(clonedSelection);
return div.innerHTML;
}
else {
return '';
}
}
else {
return '';
}
}
使用小提琴,确保首先选择引用的文本:
http://jsfiddle.net/userdude/Y4BBq/13/
该代码工作正常,但是,选择\r\n
在每个</p>
and之后都包含一个<br/>
。为什么要添加这些以及在什么时候添加?这似乎是多余的,因为<p>
and<br>
标记已经包含了新行。