Maison > interface Web > tutoriel CSS > Comment supprimer des classes avec un préfixe spécifique en JavaScript ?

Comment supprimer des classes avec un préfixe spécifique en JavaScript ?

Linda Hamilton
Libérer: 2024-11-28 02:19:10
original
1084 Les gens l'ont consulté

How to Remove Classes with a Specific Prefix in JavaScript?

Comment supprimer des classes avec un préfixe spécifique

Énoncé du problème

Vous avez un élément div avec un ID "a" avec plusieurs classes attachées à il, regroupés par préfixes spécifiques. Vous souhaitez supprimer toutes les classes d'un certain groupe sans connaître les noms de classe spécifiques. Par exemple, votre objectif est d'éliminer toutes les classes de préfixes « bg ».

Solution

Approche Regex :

var prefix = "bg";
var classes = $("#a").attr("class").split(" ").filter(function(c) {
    return !(c.match("^" + prefix + "\b"));
});
$("#a").attr("class", classes.join(" "));
Copier après la connexion

Approche en boucle :

var prefix = "bg";
var classes = $("#a").attr("class").split(" ");
for (var i = 0; i < classes.length; i++) {
    if (classes[i].startsWith(prefix)) {
        classes.splice(i, 1);
        i--;
    }
}
$("#a").attr("class", classes.join(" "));
Copier après la connexion

Plugin jQuery (ES5):

$.fn.removeClassPrefix = function(prefix) {
    return this.each(function() {
        var classes = $(this).attr("class").split(" ").filter(function(c) {
            return !c.startsWith(prefix);
        });
        $(this).attr("class", classes.join(" "));
    });
};

$("#a").removeClassPrefix("bg");
Copier après la connexion

Alternative ES6 (syntaxe plus propre):

const prefix = "bg";
const classes = $("#a").attr("class").split(" ").filter(c => !c.startsWith(prefix));
$("#a").attr("class", classes.join(" "));
Copier après la connexion

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal