Bonjour j'ai un petit souci pour un script jquery

Je cherche a rechercher un terme per exemple un string "GUILLAUME" dans un ensemble de span contenant chacun une lettre :

<span class="e">E</span>
<span class="f">F</span>
<span class="t">T</span>
<span class="h">H</span>
<span class="g">G</span>
<span class="u">U</span>
<span class="i">I</span>
<span class="l">L</span>
<span class="l">L</span>
<span class="a">A</span>
<span class="u">U</span>
<span class="m">M</span>
<span class="e">E</span>
<span class="e">E</span>
<span class="f">F</span>
<span class="t">T</span>
<span class="h">H</span>

Mon but est d'ajouter la classe active à toutes les lettres contenu dans le string mais uniquement quand elles sont consécutive et dans le bon ordre comme ci dessous :

<span class="e">E</span>
<span class="f">F</span>
<span class="t">T</span>
<span class="h">H</span>
<span class="g active">G</span>
<span class="u active">U</span>
<span class="i active">I</span>
<span class="l active">L</span>
<span class="l active">L</span>
<span class="a active">A</span>
<span class="u active">U</span>
<span class="m active">M</span>
<span class="e active">E</span>
<span class="e">E</span>
<span class="f">F</span>
<span class="t">T</span>
<span class="h">H</span>

Si quelqu'un pouvait m'aider

par avance merci

Guillaume

3 réponses


Typhon
Réponse acceptée

C'est possible ;)

Tu parcours tout tes spans et tu récupère le contenu de chacun (c'est à dire la lettre) et tu créer une chaine de caractère à partir de toute tes lettres.

Puis tu recherche la position de ton mot dans la chaine, par exemple dans ton exemple on aura

position de GUILLAUME dans EFTHGUILLAUMEEFTH qui retournera 4 ensuite tu récupère la longueur du mot cherché, ici 9.

Puis tu reparcours à nouveau tes spans, et à partir du (4ième + 1) et pour les (9 - 1) suivants (C'est à dire du span 5 à 13 dans ton exemple) tu leurs attributs la classe "active".

=D

Merci beaucoup pour l'algo :D je vais faire comme ça :)

Reste plus qu'a faire la recherche dans le tableau ce qui me semble difficile

Bon voila j'ai réussi je met à disposition mon code pour la recherche ^^ on ne sais jamais xD [code] function recherchetableau(mon_tableau, ma_recherche) { for(i=0;i<mon_tableau.length if ma_recherche.charat var t="0;" verif="0;" error="0;" while ma_recherche.length i></mon_tableau.length>