Tom's Guide > Forum > Programmation > script pour greasemonkey
Mot :    Pseudo :           
 

J'aimerais savoir si c'est possible de faire un script en .js qui reconnaitrait des expressions dans le code html d'une page comme

Code :
  1. <th>Retour de flotte</th>




et qui pourrais modifier leur affichage pour qu'il apparaisse dans une couleur choisie...

Si oui est ce que quelq'un pourrais me faire un exemple de code générique pour que je puisse faire mon script?

J'ai été voir sur userscripts.org mais je n'ai pas vu de script qui répondait a mes besoins...

Merci

ps: Je précise que ce sont des données affichées dans un tableau...

Il y a entre autre:
- Retour de flotte
- Arrivée sur une planète
- Rapport d'exploitation du champ de débris aux coordonnées [X:X:X] (X etant des variables numériques)
- Message de votre alliance


Message édité par Leviathan59 le 02-09-2007 à 18:53:10
------------------------------ Carpe Diem 8-)... du moins tant que tu le peux! :-o
Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Personne?

------------------------------ Carpe Diem 8-)... du moins tant que tu le peux! :-o
Répondre à Leviathan59

Salut,

Tu voudrais faire ça pour tous les sites, ou seulement pour ton site ?

------------------------------ Les dessins des seins ou les desseins des saints ?
Répondre à OmaR

Uniquement pour un site mais qui ne m'appartient pas...
En fait l'extension Greasemonkey permet a partir de script de modifier l'affichage d'une page dans le navigateur sans toucher a la page ou au script stocké sur le serveur...

Il y a pas mal d'exemple sur le site userscript.org...

------------------------------ Carpe Diem 8-)... du moins tant que tu le peux! :-o
Répondre à Leviathan59

Je connais greasemonkey ;) Je l'ai jamais utilisé, mais je vois à quoi il sert.
Par contre, tu peux ajouter directement du CSS ?
Si c'est le cas, tu as juste besoin de faire :

Code :
  1. th { color: blue; }
 


Et puis, si tu veux juste faire du CSS, tu n'as pas besoin de greasemonkey. Tu vas dans C:\Documents and Settings\tonpseudo\Application Data\Mozilla\Firefox\Profiles\tonnumeroprofil\chrome\
Tu copies le fichier userContent-example.css vers userContent.css.

 

Ensuite, tu édites le fichier; et tu choisis pour quel site tu veux faire ça :

Code :
  1. @-moz-document domain(nom_de_domaine){ code CSS habituel }
  2. @-moz-document url-prefix(adresse_http_partielle) { code CSS habituel }
  3. @-moz-document url(adresse_http_précise) { code CSS habituel }
 

Donc par exemple, pour idn, tu ferais :

Code :
  1. @-moz-document domain (http://www.infos-du-net.com) {
  2. th { color : blue ; }
  3. }
 

Ca va changer l'écriture de tous les TH de IDN en bleu (je sais pas si y'en a sur IDN...).
Par contre, il faut redémarrer firefox :)


Message édité par OmaR le 04-09-2007 à 10:16:44
------------------------------ Les dessins des seins ou les desseins des saints ?
Répondre à OmaR

Le truc c'est que j'aimerais donner une couleur différente aux elements en fonction de l'intitulé des messages que je recois sur le site soit les quelques phrases (et d'autres) que j'ai mis plus haut...

Mon probleme c'est qu'il n'y a pas de class appliqué au messages et je voulais donc savoir si on peut demander a un script de rechercher une expression particuliere dans le code de la page pour le modifier.

Par contre ca me fais penser a une autre solution...
On pourrais demander a greasemonkey de rajouter un attribut class dans les balises th différent pour chaque contenu...
Après il n'y aurait plus qu'a colorer en fonction de la class...
Mais ca pose toujours la question de la reconnaissance de l'expression

------------------------------ Carpe Diem 8-)... du moins tant que tu le peux! :-o
Répondre à Leviathan59

Ok; les scripts greasemonkey sont du JS, donc c'est tout con je pense.

Faudrait avoir un peu la structure de la table, y'a pas la table contenant les TH qui a un ID ?
Ensuite, tu fais un getElementsByTagName(); tu récupères les TH, et en fonction de leur innerHTML, tu appliques des styles.

------------------------------ Les dessins des seins ou les desseins des saints ?
Répondre à OmaR

Il y a aucun id pour différencier les cellules contenant l'entete de celle contenant la date ou le message.

Il y aurait moyen d'avoir un exemple avec l'expression:

<th>Retour de flotte</th>


Et comment faire pour les données numérique de:
Rapport d'exploitation du champ de débris aux coordonnées [X:X:X]

Il faut rajouter quoi pour que tout chiffre entre 1 et 999 soit reconnu?

Pour infos, il sagit de la section message de uni4.Ogame.fr


Message édité par Leviathan59 le 04-09-2007 à 13:42:48
------------------------------ Carpe Diem 8-)... du moins tant que tu le peux! :-o
Répondre à Leviathan59

Code :
  1. var ths = document.getElementsByTagName('th');
  2. for (var i=0; i<ths.length; i++) {
  3. alert(' ths['+i+'] = '+ths[i].innerHTML);
  4. }
 

Edit: si tu veux tester ça, suffit d'ajouter dans l'URL, une fois que tu as chargé ogame :

Code :
  1. javascript:function s() { var ths = document.getElementsByTagName('th'); for (var i=0; i<ths.length; i++) { alert(' ths['+i+'] = '+ths[i].innerHTML); }}; s();


Message édité par OmaR le 04-09-2007 à 16:25:28
------------------------------ Les dessins des seins ou les desseins des saints ?
Répondre à OmaR

si je dis au code de colorer en vert, tout les th seront coloré en vert non?

Si je veux que "retour de flotte" soit en vert pale et que "Arrivée sur une planète" soit en vert foncé
Je dois le préciser ou?
(Je sais je suis pas doué mais j'ai pas touché a la programmation depuis plusieurs années et j'était qu'un simple débutant a l'époque...)

------------------------------ Carpe Diem 8-)... du moins tant que tu le peux! :-o
Répondre à Leviathan59

Tu as testé le bout de code que je t'ai mis ???

------------------------------ Les dessins des seins ou les desseins des saints ?
Répondre à OmaR

Bin en fait j'arrive pas a comprendre le code...

En plus tu me dis de rajouter a l'url... mais j'ai jamais vu du code comme ca dans une url.

------------------------------ Carpe Diem 8-)... du moins tant que tu le peux! :-o
Répondre à Leviathan59

En fait, tu charges ta page ogame.
Une fois qu'elle est chargée, tu mets ce code dans l'URL, sans rien d'autre.

Tu peux faire la même chose sur tous les sites...

------------------------------ Les dessins des seins ou les desseins des saints ?
Répondre à OmaR

J'ai essayé de mettre le morceau de code dans la barre de lien mais aucun changement...

------------------------------ Carpe Diem 8-)... du moins tant que tu le peux! :-o
Répondre à Leviathan59

Dans cette page d'IDN là.
Copie ce code :

javascript:function s() { var ths = document.getElementsByTagName('th'); for (var i=0; i<ths.length; i++) { alert(' ths['+i+'] = '+ths[i].innerHTML); }}; s();



Et colle le dans l'adresse(en effaçant le reste), et valide. Tu vois rien ??

------------------------------ Les dessins des seins ou les desseins des saints ?
Répondre à OmaR

rien du tout...

------------------------------ Carpe Diem 8-)... du moins tant que tu le peux! :-o
Répondre à Leviathan59

C'est pas possible :o
http://img393.imageshack.us/img393/5413/idngw5.th.gif

T'es bien sous Firefox hein ?

------------------------------ Les dessins des seins ou les desseins des saints ?
Répondre à OmaR
Tom's Guide > Forum > Programmation > script pour greasemonkey
Aller à :

Il y a 1306 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens