Viele Websites, insbesondere alle mit Rich-Text-Bearbeitung befassten Websites (auch diese Website ist schuldig), stehlen Tastaturkürzel, die normalerweise zur Steuerung von Firefox verwendet werden, und lassen sie stattdessen etwas anderes tun. Es ist total ärgerlich, wenn ich so etwas wie Cmd-Nummer, Cmd-L, Cmd-T oder Cmd-K drücke und es nicht tut, was ich will. Kann ich damit aufhören?
Eigentlich wäre es wahrscheinlich das Beste, wenn ich das Stehlen aller Cmd- * -Verknüpfungen verbieten könnte. Ich habe sie noch nie für irgendetwas Nützliches gesehen. Ist es möglich?
CTRL-;
Ruft den Verknüpfungsmodus auf und hebt alle auf dem Bildschirm angezeigten Befehle mit den verfügbaren Verknüpfungen hervor. Jede Verknüpfung ist eine Combo, also ist neuer FallCTRL-; N
und Bearbeiten istCTRL-; E
. Sehr gewöhnungsbedürftig und ohne Konflikte. Ich wünschte, mehr Websites würden so etwas verwenden, da dies für den Benutzer einfacher ist und keine Browser-Verknüpfungen überschreibt. Schade, dass SuperUser dies nicht tut, da es von denselben Leuten wie FogBugz stammt.Antworten:
Dank der neuen
@run-at
Eigenschaft von Greasemonkey ist dies jetzt möglich!Ich habe mich von diesem Skript und diesem Skript inspirieren lassen , um sie zu einem Userscript zu kombinieren, das erfolgreich die Tastenkombinationen Ctrl+ Tund Ctrl+ abfängt S. Ich habe in Firefox 17 ESR und Firefox 25 getestet.
quelle
e.ctrlKey
füre.cmdKey
und diee.cmdKey && e.shiftKey
meisten ihrer Browser - Shortcuts zurückzufordern.9
das Array keycodes hinzufüge . Vielen Dank!11 Jahre nach dem Einreichen des Fehlers hat Mozilla endlich begonnen, an dieser beliebten Feature-Anfrage zu arbeiten, und sie scheint nun in Ordnung zu sein (getestet in Firefox 66.0.3 / Ubuntu).
(Danke an @PerJohansson für den Hinweis, dass die Einstellung seit FF 59 sehr viel schwieriger zu finden ist.)
Sie können Standortverknüpfungen deaktivieren, indem Sie die folgenden Schritte ausführen:
(i)
Symbol in der Adressleiste>
) rechts neben dem Statuselement "Verbindung".More Information
unten sehen. Klicken Sie darauf, und Sie gelangen schließlich zumPage Info
Dialogfeld.Permissions
Registerkarte, und passen Sie dieOverride Keyboard Shortcuts
Einstellung an.Hier einige aktuelle Screenshots (Mai 2019) für jeden Schritt:
Wenn Sie sich für den Verlauf dieses Fixes interessieren, finden Sie hier die zugehörigen Mozilla-Tickets: https://bugzilla.mozilla.org/show_bug.cgi?id=380637 und https://bugzilla.mozilla.org/show_bug.cgi id = 1445942
quelle
about:config
Option, um die Standardeinstellung zu ändern? Ich möchte alle Sites dazu zwingen , sich nicht in meine TastaturUmfangreiche Untersuchungen haben ergeben, dass dies ab der aktuellen Version von Firefox (3.6.x) nicht mehr möglich ist - alle Konflikte bei der Schlüsselbindung werden mit Prioritäten gelöst: System> Website> Firefox - eine ziemlich blöde Reihenfolge. Keines der Addons, die ich ausprobiert habe, scheint das Problem beheben zu können.
Möglicherweise wird es in zukünftigen Versionen machbar, aber im Moment lautet die Antwort - Unmöglich.
quelle
Da es sich anscheinend um JavaScript-Tastaturereignisse handelt, bei denen Tastendrücke gestohlen werden, ist es dann nicht möglich, ein JavaScript-Skript (das über Greasemonkey verwendet werden kann) zu erstellen , mit dem die Bindung aller Tastaturereignisse aufgehoben und die ordnungsgemäße Verwendung der einzelnen Verknüpfungen an den Browser zurückgegeben wird.
Ich bin nicht sicher, wie realisierbar dies ist, aber jemand mit mehr Erfahrung mit JavaScript / Greasemonkey kann möglicherweise helfen (es könnte sich lohnen, nach SO zu fragen).
quelle
Das Problem ist, dass auf jeder Seite JavaScript ausgeführt werden kann, mit dem ein Ereignishandler zum Abrufen von Tastendruckereignissen eingerichtet wird. Die JavaScript-Steuerelemente von Firefox sind nicht fein genug, um dies zu stoppen, ohne andere JavaScript-Funktionen zu beeinträchtigen.
Die einzige Möglichkeit, dies zu verhindern, besteht darin, Javascript zu deaktivieren (Extras -> Optionen, Registerkarte [Inhalt], deaktivieren Sie das Kontrollkästchen JavaScript aktivieren ). Oder Sie können Javascript mit einer Erweiterung wie NoScript für jede Site einzeln deaktivieren.
Mit Firefox können Sie bestimmte Verwendungszwecke von Javascript verhindern, z. B. das Verschieben / Ändern der Fenstergröße, das Ändern oder Deaktivieren des Kontextmenüs usw .; Aber nichts hindert Websites daran, Tastaturereignisse abzufangen.
Vielleicht gibt es eine Erweiterung, die dieses Maß an Kontrolle bietet - mir ist keine bekannt.
Es gibt Javascript-Optionen , aber diese Erweiterung wird nicht mehr aktualisiert.
quelle
Es ist wahrscheinlich, dass Plug-ins von Drittanbietern den Fokus vom Hauptbrowserfenster erhalten. In diesem Fall wird die Tastatureingabe (außer Interrupts) vom Plugin abgefangen. Wenn dir das nicht gefällt, kannst du das / die problematische (n) Plugin (s) immer entfernen [ich würde annehmen, dass es wahrscheinlich ein Flash ist].
quelle
Nach vielen Tests in verschiedenen Browsern ist es einfacher, die Tasten abzufangen, wenn sie gedrückt sind (nicht gedrückt), da es schwierig ist, einige dieser "in die App integrierten Tasten" mit dem Ereignis "Tastendruck" abzufangen.
Ich habe mir dieses Skript ausgedacht, das sozusagen browserübergreifend ist (ich habe es nicht auf den IE von Microsoft getestet). Beachten Sie, dass die Browser für einige Schlüssel unterschiedliche Codes zurückgeben. In meinem Fall wollte ich Strg + P verhindern.
Die Taste "P" auf Chrom wird wie
e.keyCode == 80
in der Oper gesehene.charCode == 16
, während es bei Firefox so iste.charCode == 112
Ich habe jQuery verwendet.
quelle
Wenn Sie eine Strg-Taste deaktivieren möchten, die von der Webseite übernommen wird, filtern Sie einfach nach allen Buchstabencodes von az (aufbauend auf der zuvor akzeptierten und funktionierenden Antwort).
quelle
Vielleicht können Sie Autohotkey oder Autoit verwenden, eines dieser Programme, und wenn Sie Hotkey-Combos ausführen und sie mit den Firefox-Funktionen verknüpfen können, sagen wir
Ctrl-; T
zum neuen ReiterCtrl-; N
in ein neues Fenster und so weiter.Ich weiß nicht, wie man Autohotkey oder Autoit verwendet, daher muss jemand anderes prüfen, ob dies funktioniert. Ich biete dies nur als mögliche Idee an.
quelle
Die aktuelle Version von Firefox ermöglicht es uns, "Javascript zu deaktivieren, um das Kontextmenü zu hijacken":
Es gibt jedoch keine Funktion zum Deaktivieren von Javascript, um Tastaturkürzel zu hijacken.
ps. Ich hasse die Twitter-Website, deren Tastaturkürzel im Widerspruch zu meinen systembasierten Tastaturkürzeln stehen: J, K, L, I
Ich habe auf bugzilla.mozilla.org eine Funktionsanfrage gestellt. Bitte kommentieren Sie diese hier: https://bugzilla.mozilla.org/show_bug.cgi?id=775002
quelle