_FFReadHTML berücksichtigt keine dynamischen Änderungen durch JS?

  • Hallo!

    Ist es richtig, dass _FFReadHTML (oder _FFGetValueById) keine dynamischen Änderungen durch JS (z.B. Ajax) berücksichtigt? Es scheint mir so, als das man damit nur den HTML-Teil durchsuchen kann, den man auch bekommen würde, wenn man sich manuell den Quelltext angeigen lässt. Gibt es eine andere Möglichkeit auf den geänderten HTML-Text zuzugreifen um diesen nach Strings zu durchsuchen?

    Grüße

  • Hallo,

    diese Möglichkeit hatte ich noch nicht ausprobiert.
    Allerdings frage ich mit der FF.au3 auch nur die DOM von FIreFox ab, somit sehe ich also keine Möglichkeit über diesen Weg.

    Du könntest allerdings mal versuchen mit

    [autoit]

    $bGefunden = _FFAction($Socket, "search","Suchstring")

    [/autoit]


    im Browser nach dem Text suchen.
    [EDIT]
    Wenn das funktioniert, kannst du natürlich auch die neue Funktion _FFSearch, in Version 0.2.4.0, nehmen.

    Grüße
    Stilgar

    Einmal editiert, zuletzt von Stilgar (13. September 2008 um 14:47)

  • Ich hab ein Bookmarklet, das das geänderten HTML anzeigt :) Versuch das mal mit SetGet nachzubauen.

    Code
    javascript:%20D%3Ddocument%3BB%3DD.body%3Btry%7BB.removeChild%28D.getElementById%28%27dbg%27%29%29%3B%7Dcatch%28e%29%7B%7D%3Bs%3DB.innerHTML%3Br%3D%7B%27%3B%27%3A%2759%27%2C%27%26%27%3A%2734%27%2C%27%3C%27%3A%2760%27%2C%27%3E%27%3A%2762%27%2C%27%5C%2F%27%3A%2747%27%2C%27%3D%27%3A%2761%27%7D%3Bfor%28i%20in%20r%29s%3Ds.replace%28new%20RegExp%28i%2C%20%27ig%27%29%2C%27%26%23%27%2Br%5Bi%5D%2B%27%3B%27%29%3BB.innerHTML%2B%3D%27%3Cpre%20id%3D%22dbg%22%3E%27%2Bs%2B%27%3C%2Fpre%3E%27%3Bvoid%280%29%3B


    also, so wie ich das sehe, holt das Javascript
    document.body.innerHTML
    Das solltest du mal mit _FF_SetGet testen.

  • ah - klasse. Mit dem _FFAction komme ich weiter, danke :)

    @progandy:
    ich bin der Meinung mit _FFGetSet habe ich das auch schon probiert. Zumindest habe ich dort denselben Pfad angegeben wie das JS als pfad benutzt für seine Veränderungen im Baum und habe darauf dann StringInStr anwenden wollen. Dort wurde der Text aber nicht gefunden den ich zu dieser Zeit im FF sehen konnte.

  • Würde mich nun sehr verwirren wenn body.innerHTMl wo viel anderst wäre als documentElement.innerHTML welches von _FFReadHTML verwendet wird ?(

    Gut das wenigstens die normale Such-Funktion funktioniert.

    Mit dem neuen _FFSearch hast du noch ein paar Möglichkeiten mehr als _FFAction / search.
    Auch wenn noch keine Dokumentation da ist, die Parameter sind selbst erklärend.

    Grüße
    Stilgar