cs_romain117
Messages postés53Date d'inscriptionlundi 29 juin 2009StatutMembreDernière intervention21 juillet 2013
-
29 juin 2009 à 16:40
cs_romain117
Messages postés53Date d'inscriptionlundi 29 juin 2009StatutMembreDernière intervention21 juillet 2013
-
18 juil. 2009 à 18:31
Bonjour,
J'utilise une fonction Javascript qui permet de colorer les mots cherchés (lorsque l'on se trouve sur la page de recherche).
J'utilise la fonction javascript
window.document.body.createTextRange() qui permet d'isoler chaque mot
de la page pour pouvoir les traiter un à un ensuite. Le problème est
que ce n'est y pas reconnu par firefox, seulement par internet explorer
:( !!!
Apparemment cette fonction provient de la bibliothèque msdn donc c'est normal que ca ne marche que sous IE .
Connaissez-vous la fonction que je peux utiliser pour que mon script marche sous firefox ??
Autre problème. La coloration s'effectue partout sur la page (dans
le body en fait). Or je voudrais pouvoir définir une zone de
coloration. Comment faire ?
Pour le moment l'appel de ma fonction est dans le body :
Voici ma fonction si ca peut aider :
//colore le ou les mots cherchés dans la zone de recherche
function onload(chaine)
{
var mot=chaine.split(" ");//on coupe les mots si la recherche comprend plusieurs mots
var i=0;
while (typeof(mot[i]) != "undefined" )//pour chacun des mots recherchés
{
var motrecherche = window.document.body.createTextRange();//chaque
mot est "mis" dans une cellule pour pouvoir travailler dessus ensuite
while(motrecherche.findText(mot[i])!=false) //tant qu'il y a des occurences du mot cherché
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 29 juin 2009 à 16:45
Bonjour,
regarde du coté des sources postées par petoleTeam,
de mémoire d'Alzheimer, il y a ce qu'il faut.
sinon... on te mettra ici ce qui convient.
Cordialement
Ce qu'il faut savoir sur ce code :
1 / il est appelé automatiquement à chaque chargement de la page pour peu que l'on ait inclus notre fichier js
2 / il récupère le mot cherché dans l'url : le mot (ou les mots) sont des parametres qui se trouvent apres "&s="
3 / il fait appel à un fichier css (inclus dans la source) qu'il faudra appeler en plus du script js
Voilà si ca peut en intéresser certains allez sur cette page ca marche !! (le regex ne marche pas si bien que ca mais j'y travaille...)
cs_romain117
Messages postés53Date d'inscriptionlundi 29 juin 2009StatutMembreDernière intervention21 juillet 20131 30 juin 2009 à 09:25
Salut !
Bul3, le code que tu proposes, est-ce qu'il marche seulement pour IE ou c'est aussi pour firefox ?? est-ce que c'est window.find() qu'il faut utiliser pour firefox ??
Ok merci pour le lien de petroleTeam je vais voir ca.
Et merci kankrelune aussi pour ton lien. ca a l'air un peu lourd en effet mais enfin bon, si ca marche...
Moi je dis elle était quand même bien cette fonction createTextRange(), simple et puissante.Même si évidemment, c'est du Microsoft :p
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 30 juin 2009 à 09:33
>>le code que tu proposes, est-ce qu'il marche seulement pour IE ou c'est
aussi pour firefox ??
exclusif IE
>> est-ce que c'est window.find() qu'il faut
utiliser pour firefox
oui