Hallo,
Ich habe ein sehr merkwürdiges Problem... ich habe einen TWebBrowser, welcher auf eine URL navigiert wird, und dort einige Zeilen Javascript ausführen soll... Mein Anlauf hierzu:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23:
| procedure script(S: string); var Doc: IHTMLDocument2; HTMLWindow: IHTMLWindow2; JSFn: string; begin Doc := Form1.WebBrowser1.Document as IHTMLDocument2; if not Assigned(Doc) then Exit; HTMLWindow := Doc.parentWindow; if not Assigned(HTMLWindow) then begin Exit; ShowMessage('not assigned'); end; try JSFn := S; HTMLWindow.execScript(JSFn, 'JavaScript'); except end; end; |
Es funktioniert ohne weiteres, z. B. eine alert() textbox aufzurufen. Was nicht funktioniert, ist, auf andere Funktionen, wie auf alle document-Eigenschaften (z.B. document.getElementbyID("abc")

oder auch ganz einfach colorBG u.ä. zuzugreifen. Jedesmal meldet der TWebBrowser (a.k.a. IE) "Das Objekt unterstützt diese Eigenschaft oder Methode nicht."
ich habe es auch mit "window.document.[...]" versucht - dasselbe.... Was mir ebenfalls aufgefallen ist: Wenn ich im IE in die adresszeile "Javascript: alert(document.getElementByID("q").value);" eingebe, kommt dasselbe Ergebnis. Führe ich Javascript jedoch "normal" aus, d. h. aus eienr HTML-Seite heraus, so funktioniert es -__-
Ich habe absolut keine Idee mehr. Ihr vielleicht? Danke schonmal!