Maison > interface Web > tutoriel CSS > JQuery peut-il sélectionner des pseudo-éléments CSS comme :before et :after ?

JQuery peut-il sélectionner des pseudo-éléments CSS comme :before et :after ?

Mary-Kate Olsen
Libérer: 2024-11-29 10:39:14
original
652 Les gens l'ont consulté

Can jQuery Select CSS Pseudo-elements Like :before and :after?

Accès aux pseudo-éléments via jQuery

En travaillant sur une question précédente, nous avons exploré le défi de la sélection de pseudo-éléments en fonction des effets des règles CSS. Explorons une approche alternative utilisant les sélecteurs jQuery.

Propriétés d'arrière-plan

Considérez les propriétés CSS par défaut suivantes :

.commentarea .author:before {
    background-image: url(http://...);
    background-position: -9999px -9999px;
    /* ... */
}
Copier après la connexion

Ces propriétés sont ensuite modifiées de manière sélective :

.author[href$="gbacon"]:before /* ... */ {
  content: "";
  background-position: 0 -140px
}
Copier après la connexion

jQuery Sélecteurs

Pour sélectionner des pseudo-éléments avec des positions d'arrière-plan par défaut, les sélecteurs de base comme celui-ci ne fonctionneront pas :

GM_log("size = " + $(".commentarea .author:before").size());
Copier après la connexion

D'autres tentatives, telles que l'utilisation de .siblings(), échouent également pour produire les résultats souhaités.

Limitations du pseudo-élément Sélecteurs

Il est important de noter que :before et :after ne sont pas des sélecteurs jQuery valides. Ils servent un objectif précis :

  • :avant insère le contenu avant l'élément sélectionné
  • :après insère le contenu après l'élément sélectionné

Exemple Utilisation

Le code HTML et CSS suivant montre comment :avant et :après work :

<span class='a'>
    Outer
    <span class='b'>
        Inner
    </span>
</span>
Copier après la connexion
.a .b:before {
    content: "|Inserted using :before|";
}

.a {
    color: blue;
}

.b {
    color: red;
}
Copier après la connexion

Dans cet exemple, le texte est ajouté au début de la travée intérieure en utilisant :before.

Alternatives

Depuis : before n'est pas un sélecteur jQuery valide, des approches alternatives sont nécessaires. Une option consiste à utiliser des plugins jQuery externes comme jQueryRule pour extraire la règle d'origine.

Veuillez noter que l'accès aux propriétés de style des pseudo-éléments avec jQuery peut être difficile. Réfléchissez attentivement s'il existe des approches alternatives qui pourraient répondre plus efficacement à vos besoins.

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