问题:如何实现类似富文本编辑器的文本选中并替换值得功能?
var word = window.getSelection?window.getSelection():document.selection.createRange();
alert(word);
使用以上api可以实现获取选取的值,但是如何得到选取的值具体位置并且替换呢?
问题:如何实现类似富文本编辑器的文本选中并替换值得功能?
var word = window.getSelection?window.getSelection():document.selection.createRange();
alert(word);
使用以上api可以实现获取选取的值,但是如何得到选取的值具体位置并且替换呢?
有个选择内容加版权声明的常见效果。。。感觉和你这个需求类似。。。
$('body').on('copy', function (e) {
if (typeof window.getSelection == 'undefined') {
return;
}
var body_element = document.body,
selection = window.getSelection();
if (('' + selection).length < 30) {
return;
}
var newdiv = document.createElement('div');
newdiv.style.position = 'absolute';
newdiv.style.left = '-99999px';
body_element.appendChild(newdiv);
newdiv.appendChild(selection.getRangeAt(0).cloneContents());
if (selection.getRangeAt(0).commonAncestorContainer.nodeName == 'PRE') {
newdiv.innerHTML = '<pre>' + newdiv.innerHTML + '</pre>';
};
newdiv.innerHTML += '<br />著作权归作者所有。<br />商业转载请联系作者获得授权,非商业转载请注明出处。<br />原文: <a href="' + location.href + '">' + location.href + '</a> © abcde.com';
selection.selectAllChildren(newdiv);
window.setTimeout(function () {
body_element.removeChild(newdiv);
}, 200);
});
10 回答11.2k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答4.9k 阅读✓ 已解决
5 回答3.3k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决