我正在尝试制作有史以来最简单的 Chrome 扩展程序,但唉,我遇到了大问题,希望得到一些帮助。
这就是我想要它做的:
我在页面上选择一些文本并按下扩展弹出窗口。当我这样做时,所选文本的背景颜色变为黄色。当我点击其他地方(并且文本被取消选择)时,背景颜色被删除。
我怎么做?
我在这里找到了这段代码:
function makeEditableAndHighlight(colour) {
var range, sel = window.getSelection();
if (sel.rangeCount && sel.getRangeAt) {
range = sel.getRangeAt(0);
}
document.designMode = "on";
if (range) {
sel.removeAllRanges();
sel.addRange(range);
}
// Use HiliteColor since some browsers apply BackColor to the whole block
if (!document.execCommand("HiliteColor", false, colour)) {
document.execCommand("BackColor", false, colour);
}
document.designMode = "off";
}
function highlight(colour) {
var range, sel;
if (window.getSelection) {
// IE9 and non-IE
try {
if (!document.execCommand("BackColor", false, colour)) {
makeEditableAndHighlight(colour);
} …Run Code Online (Sandbox Code Playgroud)