Javascript 更改鼠标高亮显示的一系列文本的背景色
我有一系列的段落,我想改变一些选定文本的背景色。 例如:Javascript 更改鼠标高亮显示的一系列文本的背景色,javascript,jquery,html,Javascript,Jquery,Html,我有一系列的段落,我想改变一些选定文本的背景色。 例如: <p>The quick brown</p> <p>fox jumps over</p> <p>the lazy dog</p> 快速棕色 狐狸跳了过去 懒狗 用户选择从“棕色”到“惰性”的文本范围,并单击“更改颜色”按钮。我要做的是对所选文本进行修改,如更改颜色、大小等。请参见 我希望通过这篇文章的帮助,你将能够实现你真正想要的。这是我所能做到的(仅适用于同一块
<p>The quick brown</p>
<p>fox jumps over</p>
<p>the lazy dog</p>
快速棕色
狐狸跳了过去
懒狗
用户选择从“棕色”到“惰性”的文本范围,并单击“更改颜色”按钮。我要做的是对所选文本进行修改,如更改颜色、大小等。请参见
我希望通过这篇文章的帮助,你将能够实现你真正想要的。这是我所能做到的(仅适用于同一块元素中的文本)
如果有人能改进这一点,请做
将“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"});
});
});
“选择”是指用光标标记它?为什么需要这个?获取选择、在多个段落中插入跨距等都会非常复杂。看看这个问题,然后用jQuery改变背景,也许你会在这里()或这里()找到一些想法@dTDesign必须在选定文本之间插入一个跨距,以便可以更改选定文本的背景色。在这种情况下,OP使用的不仅仅是一个
,因此执行此操作将非常复杂。想象一下,如果用户选择快速棕色狐狸,您将如何在两个
-s之间放置span
?这是不一样的…@Balint Bako,Iknow,但这个链接是为了给出一个如何获取所选文本的想法,基于这个想法,他可以添加逻辑来更改文本的背景颜色。