Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# Recherche de chaines de caracteres dans des frames

Envoyé par : oliscr

Date : 02/07/2010 15:40

Bonjour à tous !

Je viens de finir de développer une extension .xpi pour Firefox qui récupère des chaines de caractères dans le code source de la page active, et appelle un Web Service en AJAX afin de retourner un résultat en rapport avec cette chaine.

Tout fonctionne correctement, si ce n'est que ... Lorsque il s'agit d'une page web simple, du style

<html><body>bla bla machaine bla bla</body></html>

j'arrive a recuperer la chaine simplement, grace à l'objet RegExp de javascript.

Cependant, admettons maintenant que je recherche "machaine" sur une page plus complexe, comme dans le corps d'un mail lu sur Gmail. Ma technique ne peut pas fonctionner, car apparement, la page est construite autour de plusieurs iframe, et de ce fait je ne peux pas y accéder avec javascript ! (du moins c'est ce que j'ai cru comprendre en cherchant un peu partout sur internet)

Quelqu'un saurait donc comment je peux procéder autrement ? Je n'ai pas vraiment besoin de récuperer le code source de la page pour faire ça, je pourrais me contenter seulement de recuperer le texte visible sur celle-ci, mais je ne sais pas comment faire.

Merci de vos réponses, si je n'ai pas été clair dans ma question n'hésitez pas à demander des précisions !

# Re: Recherche de chaines de caracteres dans des frames

Envoyé par : joliclic

Date : 08/07/2010 16:34

Je ne vois pas autre chose que de parcourir récursivement le DOM à la recherche des iframes/frames/object et de réappliquer ton traitement.

Si çà peut t'aider, c'est ce que je fais dans mon extension FlashKiller .

# Re: Recherche de chaines de caracteres dans des frames

Envoyé par : dombioinfo

Date : 30/07/2010 23:23

Bonsoir,

Je suis également dans la même situation que olisrc. joliclic pourrais-tu poster un morceau de ton code ou bien donner quelques explications ?

Merci

# Re: Recherche de chaines de caracteres dans des frames

Envoyé par : thefab

Date : 10/08/2010 00:54

Pour parcourir facilement DOM vous pouvez utiliser TreeWalker, j'ai pas de code sous la main mais en gros c'est comme ça:

var filter = function(node)
    {
    if (node.tagName == "FRAME" || node.tagName == "IFRAME")
        return NodeFilter.FILTER_ACCEPT;
    else
        return NodeFilter.FILTER_SKIP;
    }

var walker = document.createTreeWalker(document.body, NodeFilter.SHOW_ELEMENT, filter, false);

while (walker.nextNode())
    walker.currentNode.todo

Il n'est plus possible de poster des messages dans ce forum.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.