我有一系列段落,我想更改所选文本的背景颜色。 例如:
<p>The quick brown</p>
<p>fox jumps over</p>
<p>the lazy dog</p>
用户选择了从“棕色”到“懒惰”的文本范围,然后单击更改颜色按钮。我想要做的是对所选文本进行修改,如更改颜色,大小等。
答案 0 :(得分:1)
这是我得到的(仅适用于同一块元素中的文本) 如果有人能改进这一点,请做。
将'buttonid'替换为按钮的ID
function selectHTML() {
try {
if (window.ActiveXObject) {
var c = document.selection.createRange();
return c.htmlText;
}
var nNd = document.createElement("span");
var w = getSelection().getRangeAt(0);
w.surroundContents(nNd);
return nNd.innerHTML;
} catch (e) {
if (window.ActiveXObject) {
return document.selection.createRange();
} else {
return getSelection();
}
}
}
$(function() {
$('#button_id').click( function() {
var mytext = selectHTML();
$('span').css({"color":"blue"});
});
});
答案 1 :(得分:0)
请参阅Selecting text in an element (akin to highlighting with your mouse)
我希望在这篇文章的帮助下,你能够实现你真正想要的东西。