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

Comment puis-je mettre en gras des chaînes de texte spécifiques dans un paragraphe à l'aide de jQuery ?

Mary-Kate Olsen
Libérer: 2024-11-30 12:04:12
original
425 Les gens l'ont consulté

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

Chaînes de texte en gras dans jQuery

Vous recherchez une solution jQuery pour mettre en évidence une chaîne de texte spécifique dans un paragraphe en la mettant en gras. Cependant, votre code ne produit pas le résultat souhaité :

$(window).load(function() {
  // ADD BOLD ELEMENTS
  $('#about_theresidency:contains("cross genre")').css({'font-weight':'bold'});
});
Copier après la connexion

Ce code vise à cibler le texte avec la phrase "cross genre" au sein de l'élément avec l'ID "about_theresidency" et à appliquer la propriété CSS "font -weight" pour le mettre en gras. Cependant, cela reste inefficace.

Solution

Pour mettre en gras des chaînes de texte à l'aide de jQuery, vous pouvez utiliser la méthode replace() avec html(). Le code suivant montre comment :

var html = $('p').html();
$('p').html(html.replace(/world/gi, '<strong>$&amp;</strong>'));
Copier après la connexion

Cet extrait de code :

  1. Stocke le contenu HTML du paragraphe dans la variable html.
  2. Utilise le remplacement( ) sur HTML pour rechercher toutes les occurrences du texte "world" (insensible à la casse) et l'envelopper dans balises.
  3. Mise à jour le contenu HTML du paragraphe avec la chaîne modifiée pour appliquer la mise en forme en gras.

Astuce supplémentaire

Le code peut être affiné dans un plugin :

$.fn.wrapInTag = function(opts) {

  var tag = opts.tag || 'strong'
    , words = opts.words || []
    , regex = RegExp(words.join('|'), 'gi') // case insensitive
    , replacement = '<'+ tag +'>$&amp;</'+ 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 des mots spécifiques dans des balises HTML. Dans l'exemple fourni, les mots « monde » et « rouge » sont entourés de balises.

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