Maison > interface Web > tutoriel CSS > Comment puis-je mettre en gras un texte spécifique dans un paragraphe à l'aide de jQuery ?

Comment puis-je mettre en gras un texte spécifique dans un paragraphe à l'aide de jQuery ?

Barbara Streisand
Libérer: 2024-12-08 07:09:11
original
562 Les gens l'ont consulté

How Can I Bold Specific Text Within a Paragraph Using jQuery?

Manipulation de texte avec jQuery : enhardir des chaînes spécifiques

Dans jQuery, les utilisateurs rencontrent souvent le besoin de localiser un texte spécifique dans un document et de le modifier apparence. Un scénario courant consiste à mettre l'accent sur certains textes en les mettant en gras.

Considérez le code jQuery suivant qui tente de mettre en gras une phrase spécifique dans un paragraphe avec l'ID "about_theresidency" :

` `
$(window).load(function() {
$('#about_theresidency:contains("cross genre")').css({'font-weight':'bold'});
});
``

Ce code a pour but de trouver des éléments avec l'ID "about_theresidency" qui contiennent le texte "cross genre", puis appliquez la propriété CSS "font-weight" pour mettre en gras ce texte spécifique. Cependant, ce code peut ne pas fonctionner comme prévu en raison de la nature dynamique du texte dans « about_theresidency ».

Pour résoudre ce problème, envisagez d'utiliser l'approche suivante :

1

2

var html = $('p').html();

$('p').html(html.replace(/world/gi, '<strong$&</strong>'));

Copier après la connexion

Ici, nous exploitons la méthode replace() pour trouver toutes les occurrences du texte « monde » dans le paragraphe et les remplaçons par le même texte entouré de balises fortes. Cela met efficacement en gras le texte souhaité sans compter sur le sélecteur :contains de jQuery.

Vous pouvez également utiliser un plugin jQuery personnalisé pour une plus grande flexibilité :

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

$.fn.wrapInTag = function(opts) {

 

  var tag = opts.tag || 'strong'

    , words = opts.words || []

    , regex = RegExp(words.join('|'), 'gi') // case insensitive

    , replacement = '<'+ tag +'>$&</'+ tag +'>';

 

  return this.html(function() {

    return $(this).text().replace(regex, replacement);

  });

};

 

// Usage

$('p').wrapInTag({

  tag: 'em',

  words: ['world', 'red']

});

Copier après la connexion

Ce plugin vous permet d'envelopper n'importe quel élément spécifié. texte dans n'importe quelle balise HTML souhaitée, offrant un meilleur contrôle sur le processus de manipulation de texte.

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