首頁 > web前端 > css教學 > 主體

如何使用 JavaScript 以背景顏色突出顯示選定的文字?

DDD
發布: 2024-11-16 13:27:03
原創
958 人瀏覽過

How to Highlight Selected Text with a Background Color Using JavaScript?

使用JavaScript 更改選取文字的CSS

要反白網頁上的選取文本,您可以使用execCommand() 函數,該函數可讓您更改現代瀏覽器中的背景顏色。

要實現此目的,您可以使用以下函數:

function highlight(colour) {
    var range, sel;
    if (window.getSelection) {
        // IE9 and non-IE
        try {
            if (!document.execCommand("BackColor", false, colour)) {
                makeEditableAndHighlight(colour);
            }
        } catch (ex) {
            makeEditableAndHighlight(colour)
        }
    } else if (document.selection && document.selection.createRange) {
        // IE <= 8 case
        range = document.selection.createRange();
        range.execCommand("BackColor", false, colour);
    }
}

function makeEditableAndHighlight(colour) {
    var range, sel = window.getSelection();
    if (sel.rangeCount &amp;&amp; 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";
}
登入後複製

此函數檢查選擇範圍並應用指定的背景顏色使用 execCommand()。它可以處理 IE 和非 IE 瀏覽器,確保跨瀏覽器相容性。

以上是如何使用 JavaScript 以背景顏色突出顯示選定的文字?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板