Changer la couleur d'un mot dans une chaine de caractère
Résolu
Hamster18
Messages postés
176
Date d'inscription
Statut
Membre
Dernière intervention
-
Hamster18 Messages postés 176 Date d'inscription Statut Membre Dernière intervention -
Hamster18 Messages postés 176 Date d'inscription Statut Membre Dernière intervention -
Bonjour j'ai une chaine de caractère dans laquelle j'aimerais changer la couleur d'un mot précisément. Je récupère cette chaine d'une balise <p> puis je la "découpe" grace a la méthode split(). J'ai essayé avec le méthode
Merci d'avance de votre aide.
words[j].style.color = '#4075A4';mais cela me provoque une erreur. J'ai ensuite essayer avec
words[j].fontcolor("4075A4")mais cela ne change pas la couleur ... Auriez vous des idées ?
Merci d'avance de votre aide.
A voir également:
- Changer la couleur d'un mot dans une phrase html
- Changer dns - Guide
- Trousseau mot de passe iphone - Guide
- Changer la couleur de la barre des taches - Guide
- Mot de passe - Guide
- Changer mot de passe administrateur windows 10 - Guide
4 réponses
Salut,
ceci récupére la chaîne pour placer une balise 'span' autour du second mot(après le 1er espace), à adapter selon vos contraintes:
voilà il ne reste qu'à mettre la classe CSS 'aStyler'.
ceci récupére la chaîne pour placer une balise 'span' autour du second mot(après le 1er espace), à adapter selon vos contraintes:
<p id='souschaine'>Un texte a découper</p>
let chaine = document.getElementById('souschaine').innerHTML; let premierEspace =chaine.indexOf(' ');//-- position du 1er espace let chaine2=chaine.substring(premierEspace+1, chaine.length);/* chaine tronquée après 1er espace*/ let secondEspace=chaine2.indexOf(' ');/* on a maintenant l'emplacement (index) des 2 espaces entourant le 2nd mot*/ let nouvelleChaine=chaine.substring(0,premierEspace)+'<span class="aStyler">'+chaine.substring(premierEspace, secondEspace)+'</span>'+chaine.substring(secondEspace+1, chaine.length); document.getElementById('souschaine').innerHTML=nouvelleChaine;/* remplace l'ancien par le nouveau */
voilà il ne reste qu'à mettre la classe CSS 'aStyler'.
Bonjour
les styles s'applique à des éléments HTML tel que les balises p, span , div...
tu dois donc placer le mot à colorier dans une balise span ou p et c'est à cette balise que tu appliquera le style.
les styles s'applique à des éléments HTML tel que les balises p, span , div...
tu dois donc placer le mot à colorier dans une balise span ou p et c'est à cette balise que tu appliquera le style.
Pour l'ajouter dans une balise depuis le code js exits-il une fonction quelconque ?
car j'ai essayer comme ceci :
Mais j'ai l'erreur suivante "NotFoundError: Node was not found"
voici comment j’obtiens texte[i] :
var texte = document.querySelectorAll(".text-news");
words[j].fontcolor("4075A4") let newP = document.createElement('span'); newP.textContent = words[j]; newP.style.color = '#f32b00'; var div=document.querySelector("h1") document.body.insertBefore(newP,texte[i].childNodes[0]);
Mais j'ai l'erreur suivante "NotFoundError: Node was not found"
voici comment j’obtiens texte[i] :
var texte = document.querySelectorAll(".text-news");