window.getSelection().getRangeAt(0).toString()
可以直接获得range 的文本内容,但是无法获得html
获取方法
var range = window.getSelection().getRangeAt(0);
// 获取选中的 document-fragment
var content = range.extractContents();
// 内存中创建一个元素,
var span = document.createElement('SPAN');
// 将 document-fragment 添加到元素
span.appendChild(content);
// 最终回去元素的html ,就是选中的html
var result = $(span).html();
参考文档:
http://stackoverflow.com/questions/5643635/how-to-get-selected-html-text-with-javascript