Sie sind in der Kategorie Opera
Kategorien:
Blog · Web · Browser · OperaBugs

Montag, 09. März 2009

Javascript-Kontextmenu (fast) auch für Opera

Leider kann Operas Browser, selbst in der 10 Beta, immer noch keinen Event oncontextmenu verarbeiten. Dieser Event wird dazu verwendet, um mit Javascript Kontextmenüs zu erzeugen, auf Webseiten oder in Webanwendungen. Aber es gibt Abhilfe in Form eines User-Javascriptes.

Problematik

Es gibt Webseiten wie diverse World of Warcraft®, andere MORPG- oder Spieleseiten, die Kontextmenüs verwenden, um dort Einstellungen zu tätigen. Auch Webeditoren oder Filemanager verwenden solche Menüs.
Will eine in Opera dort mit der rechten Maustaste ein Kontextmenü aufrufen, erscheint immer nur das eigene Browserkontextmenü – lästig.

Lösung

Es besteht die Möglichkeit, ein User-Javascript (UserJS) aus Operas Benutzerforen zu verwenden – nämlich xEraths oncontextmenu-emulation. Dieses UserJS lässt sich einfach mit ein paar zusätzlichen Einstellungen in Opera aktivieren.

Wie das geht? Es ist nicht so schwierig.

Aktivierung von UserJS

Dazu suchen wir erst einmal das Opera-Profilverzeichnis.
Wo das Opera-Profilverzeichnis liegt, kann im Menü Hilfe -> Über diese Operainstallation im Abschnitt Dateien und Pfade bei Profil-Verzeichnis nachgesehen werden.

Dort legen wir ein Unterverzeichnis namens MeineUserJS an.

Um UserJS laufen zu lassen, muss Opera erst einmal wissen, wo sich diese Skripte befinden.

Dazu muss in Operas Einstellungen (zu erreichen im Menü unter Extras -> Einstellungen) das Verzeichnis bekannt gemacht werden.
Im Reiter Erweitert im Abschnitt Inhalte gibt es den Button JavaScript-Optionen. Im aufgerufenen Fenster wird dann unten im Feld User-Javascript-Dateien das Verzeichnis namens MeineUserJS eingegeben, also den kompletten Pfad. Dann mit immer OK weiter bestätigen.

Damit sollte Opera ab jetzt UserJavascripte ausführen können.

Nun müssen wir das gewünschte UserJS namens oncontextmenu-emulation holen.

Installation des UserJS

Erst laden wir xEraths UserJS namens a-oncontextmenu-emulation.js herunter.

Das speichern wir dann im vorhin angelegten Verzeichnis MeineUserJS ab.

Damit ist das Skript aber immer noch nicht aktiv. Denn dazu muss es für die Seiten, auf denen ein Kontextmenü nicht funktioniert, aktiv werden.

Aktivierung des Skripts für bestimmte Seiten

Damit das Skript auf bestimmten Webseite reagiert, muss in den Seitenspezifischen Einstellungen noch für die jeweilige Seite aktiviert werden, dass Javascript Rechtsklicks der Maus abfangen darf.

Um zu den seitenspezifischen Einstellungen zu kommen, wird erst einmal die gewünschte Webseite aufgerufen und dann Extras -> Schnelleinstellungen -> Seitenspezifische Einstellungen gewählt.

Dort im Reiter Skripte bei der Option Behandlung von Rechtsklicks durch Skripte zulassen anhaken und mit OK bestätigen.

Damit ist für die jeweilige Webseite aktiviert, dass auch mit Javascript erzeugte Kontextmenüs angezeigt werden.

Für weitere, andere Webseiten, muss auch für diese in Seitenspezifische Einstellungen die Option Behandlung von Rechtsklicks durch Skripte zulassen aktiviert werden.

Tests

Trotz Angabe in xEraths Skript ist es auf WoW unmöglich mit einem Rechtslick Änderungen herbeizuführen. Da irrte sich xErath wohl.
Ansonsten funktionieren jetzt die Kontextmenüs im KFM (Filemanager)

Fazit

Ich finde, dass xEraths Skript eine gute Sache ist, Operas fehlende Fähigkeiten nachzubessern. So können auch Web-Anwendungen wie Google Docs oder Yahoo Mail oder Webeditoren oder Online-Filemanager verwendet werden.

Weitere nützliche UserJS, die ich auch verwende, habe ich im Blog aufgeführt.

Weiterhin gibt es in der deutschen Opera-Community ein Forum zu UserJS, mit vielen Fragen und Antworten zu UserJS und es werden dort auch Skripte kostenlos angebotenen.
Außerdem bei Opera selbst ein englisches UserJavascript-Forum. Auch in Blogs auf my.opera sind so einige UserJS zu finden.


Kommentar für Blogeintrag

Vorschau des Kommentars

Kommentar

Mit * gekennzeichnete Felder müssen angegeben werden.



(Nur Text ohne Formatierung möglich)

Hinweis zum Datenschutz

Falls es Probleme mit Kommentaren/Trackbacks gibt, bitte ich um eine Beschreibung per E-Mail.

TrackBack-URL: http://www.gwendragon.de/blog/Web/Browser/Opera/opera-kann-fast-oncontextmenu.html/trackback

↑Blogeintrag