Maison > interface Web > tutoriel CSS > Comment mettre en surbrillance le texte sélectionné avec une couleur d'arrière-plan à l'aide de JavaScript ?

Comment mettre en surbrillance le texte sélectionné avec une couleur d'arrière-plan à l'aide de JavaScript ?

DDD
Libérer: 2024-11-16 13:27:03
original
1011 Les gens l'ont consulté

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

Modifier le CSS du texte sélectionné à l'aide de JavaScript

Pour mettre en surbrillance le texte sélectionné sur une page Web, vous pouvez utiliser la fonction execCommand(), qui vous permet de changer la couleur d'arrière-plan dans les navigateurs modernes.

Pour y parvenir, vous pouvez utiliser la fonction suivante :

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";
}
Copier après la connexion

Cette fonction vérifie la plage de sélection et applique la couleur d'arrière-plan spécifiée en utilisant execCommand(). Il gère à la fois les navigateurs IE et non-IE, garantissant la compatibilité entre navigateurs.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal