Zugriff auf HTML der gleichen Seite - geht das?

Status
Nicht offen für weitere Antworten.

atarifreak

Aktives Mitglied
Hallo!

Ich suche einen Weg, um von einem Applet aus direkt auf die Inhalte einer Website zuzugreifen, um beispielsweise die Inhalte eines ganz normalen Textfeldes zu ändern oder die Inhalte anderer Tags zu bearbeiten.
Gibt es aus dem Applet heraus auch die Möglichkeit, ähnlich wie bei Java Script, HTML-Inhalte der gleichen Seite direkt anzusprechen? Wenn ja, wie?

Vielen Dank!

AF
 
Es gibt nicht sehr viel. Netscape hat eine Methode entwickelt, um auf Javascript der Seite zuzugreifen, ich weiß aber nicht mehr wie das heißt, außerdem tut es nur auf Netscape. Ansonsten gibt es noch Applet#getAppletContext().
 
Das mit Netscape ist schonmal absolut korrekt.

Das ganze heisst Live-Connect und ist inzwischen auch in die Script-Applet-Richtung von J-Script aus möglich.

Aktuelle Version: Windows-Script 5.6 (!Achtung: es gibt schon jede Menge Sicherheits-Updates!)
http://www.microsoft.com/downloads/...d3-c4e1-4e18-9c6c-0ea28c9a5d9d&displaylang=de

Für die andere Richtung Applet-Script ist natürlich das Applet selbst verantwotlich. Deswegen kommt man nicht drum herum, sich die dafür relevanten Klassen (z.B. netscape.jar) zu besorgen und in den Klassenpfad des JRE's zu kopieren. Ich extrahiere dazu immer den netscape-Ordner aus dem Jar-Archiv des Opera-Browsers (Opera.jar), wofür dieser natürlich installiert werden muß. Möglicherweise gibt es aber hier noch einen besseren Weg.

Mit

Code:
JSObject javascript = JSObject.getWindow((Applet) this); //this muss ein Applet sein!

besorgt man sich ein JavaScript-Object und kann dann mit

Code:
javascript.call("methodenname", Object[] argumente);

die JavaScript-Methode (welche natürlich vorhanden sein muß.) aufrufen.

Die Javascript-Methode ändert letztendlich das gewünschte HTML-Element.

Noch eine Winzigkeit: Applets welche auf Scripte zugreifen sollen, muß als Eigenschaft noch MAYSCRIPT=YES übergeben werden:

Code:
<applet code="MyApplet.class" codebase="./" width=100 height=100 mayscript=yes></applet>
 
Und die zweite sauberere Möglichkeit (für mich grad' frisch reingekommen 😀 ) sind die Pakete der JVM's ab Version 1.4 org.w3c.dom. Da einige viele Browser (z.B. Alle Mozilla Derivate und Opera) bei zu vielen JSExceptions aussteigen.
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben