Zum deaktivieren von Kontextmenü rechten Maustaste/lange Berührung in einen kiosk-Modus von Chrome?

Arbeiten wir an der software für ein museum. Es gibt mehrere interaktive Kioske mit touch-screen läuft auf Windows 8.1, die miteinander verbunden sind in das lokale Netzwerk. Keine Tastatur, keine Maus. Der server mit Apache enthält mehrere lokale websites. Jeder kiosk führt eine Kopie von Google Chrome im kiosk-Modus. So, wir haben einige lokale web-Anwendungen, die eine Museums-Besucher mit Informationen.

Nun, das problem. Wenn ein Besucher nicht lange touch auf dem Bildschirm funktioniert es wie ein Analog von rechts klicken. Kontext-Menü erscheint. Wir wollen es nicht bei allen. Ich habe Hinzugefügt, "oncontextmenu = return false" in den body-tag, und es half. Aber. Wir haben ein paar externe websites laufen in iframes (das museum verfügt über eine Verbindung zum Internet). Und Kontext-Menü hat erscheinen auf iframes. AFAIK, es gibt keine Möglichkeit, es zu deaktivieren per javascript.

Unser system Ingenieur bekam eine software, die vollständig deaktiviert den Rechtsklick in Windows. Überall, einschließlich Chrome. Aber. Es funktioniert für eine Maus. Und was berührt... naja, es deaktiviert die touch-Ereignisse überall neben Chrome. Vielleicht Chrome hat seinen eigenen touch-events handler, weiß ich nicht.

So, nachdem alle. Wir brauchen, um loszuwerden off Kontextmenü auf iframes auf Rechtsklick/lange Berührung in einen kiosk-Modus von Chrome. Bitte geben Sie mir einige Ratschläge.

Obwohl es möglicherweise könnte eine Sicherheitslücke, die Sie könnten versuchen, und deaktivieren Chrome cross-domain-origin-policy und verwenden Sie window.frames["frame_id"].document.oncontextmenu = function(){ return false };
durch die Deaktivierung von Chrome cross-domain-origin-policy bedeutet Sie starten mit --disable-web-security-Schalter? Wenn dem so ist, es funktioniert nicht, leider...
Ich glaube, meine Antwort wird nicht funktionieren, wenn Ihr kisok Sicht ist innerhalb einer Chrome-app-man kann nicht Spritzen ein content-script in einem iframe geladen in einer anderen Erweiterung oder app Seite, auch wenn der iframe ist eine Seite, die die Verlängerung sollte in der Regel Zugriff haben. Aber ich denke, es könnte möglich sein, Ihr problem zu lösen, indem Sie mit <webview> - Elemente statt iframes: verwenden Sie die executeScript - Methode, wenn die webview feuert eine contentload Veranstaltung.

InformationsquelleAutor korsun | 2015-01-29

Schreibe einen Kommentar