【发布时间】:2014-05-19 06:29:58
【问题描述】:
谁能帮帮我?我在这里得到了这些代码https://stackoverflow.com/a/17836828/2338164
$(document).on("mouseup",".wrap",function(){
var highlight = window.getSelection();
if(highlight.toString().length>=1){
var spn = '<span class="highlight">' + highlight + '</span>';
var text = $(this).text();
var range = highlight.getRangeAt(0);
var startText = text.substring(0, range.startOffset);
var endText = text.substring(range.endOffset, text.length);
$('#q3txt').append(range.startOffset+"<br>");
$(this).html(startText + spn + endText);
}
});
我尝试使用它,它工作正常,直到你再次突出显示......
这是一个链接http://jsfiddle.net/AN76g/。
我想要做的是......用户将突出显示一个块然后将其包装在跨度中,但如果用户犯了错误并尝试再次突出显示,跨度将被删除并尝试包装新突出显示的文本。但要么位置发生变化,要么部分文本被附加。
【问题讨论】:
标签: javascript jquery