Ist es möglich, benutzerdefinierte Javascript-Tastenkombinationen in Safari zu deaktivieren?


14

Ich habe einige Jahrzehnte Erfahrung mit Emacs, daher sind die Emacs-ähnlichen Tastenkombinationen für die Textbearbeitung unter Mac OS X sehr gut. Leider haben sich einige Websites (ahem) dafür entschieden, diese mit Javascript zu überschreiben. Beispielsweise controlBfügt einer von ihnen den Text ein **strong text**, anstatt ein Zeichen zurückzugehen.

Gibt es eine Möglichkeit, Safari dazu zu bringen, Javascript-Tastenkombinationen zu ignorieren, die versuchen, die Standard-Tastenkombinationen von OS X neu zuzuordnen?


Ich kenne keinen allgemeinen Weg, um das zu tun, aber Sie könnten GreaseKit verwenden, um die WMD-Verknüpfungen zu deaktivieren. Siehe Gibt es eine Möglichkeit, die Hotkeys zu deaktivieren? - Meta Stack Overflow .
Lri

Danke für den Link! Es ist frustrierend zu sehen, dass sie denken, dass es in Ordnung ist, nur weil sich die Leute nicht genug beschwert haben. (Ich benutze SE-Sites seit Jahren und wusste nicht, dass ich mich am ersten Tag beschweren musste, damit meine Stimme gehört werden kann.) Ich zögere jedoch, seit dem ersten Teil von SE Webbrowser-Erweiterungen hinzuzufügen Bei jeder Webbrowser-Problemdiagnose ist "Alle Erweiterungen deaktivieren".
Ken

1
Ich bin bei Ken. Ich persönlich kann nicht zählen , wie oft ich die Verwendung von „undo“ hatte , weil meine Hände habe ich vergessen , auf eine SE - Website war: S
ephsmith

Ich wollte vorschlagen, dass Sie Javascript deaktivieren könnten ... Es hat Ihr Problem behoben, aber es wurde ein neues erstellt - ich konnte keine Kommentare mehr zu
StackExchange posten

1
Ist diese Frage zu der Seite hier? oder über JavaScript überall deaktivieren? Ich könnte es als Fehlerbericht in unser Meta verschieben, aber es gibt bereits mehrere Anfragen für diese Seite. meta.stackexchange.com/questions/3245/…
bmike

Antworten:


7

Hier ist Rob Ws Skript aus Meta , das so aktualisiert wurde, dass es nur cntrl- * blockiert und so repariert wird, dass es mit NinjaKit funktioniert, einer Safari-Erweiterung zum Ausführen von Benutzerskripten.

NinjaKit: https://github.com/os0x/NinjaKit

Skript:

// ==UserScript==
// @name           Cya WMD shortcuts
// @namespace      Rob W
// @version        1.0
// @include          http://apple.stackexchange.com/*
// @include          http://stackoverflow.com/*
// @include          http://superuser.com/*
// @include          http://meta.superuser.com/*
// @include          http://serverfault.com/*
// @include          http://meta.serverfault.com/*
// @include          http://askubuntu.com/*
// @include          http://meta.askubuntu.com/*
// @include          http://*.stackexchange.com/*
// @include          http://answers.onstartups.com/*
// @include          http://meta.answers.onstartups.com/*
// @include          http://stackapps.com/*
// @run-at         document-end
// @grant          none
// ==/UserScript==
(function () {
    var p = document.getElementById('wmd-input');
    console.log("wmd-input:" + p);
    if (p) {
        p = p.parentNode;

        function ignore(e) {
            if (e.ctrlKey) {
                e.stopPropagation();
            }
        }
        p.addEventListener('keydown', ignore, true);
        p.addEventListener('keypress', ignore, true);
        p.addEventListener('keyup', ignore, true);
    }
})();



1

Es ist schon eine Weile her, dass ich es verwendet habe, aber der Privoxy- Proxy-Server hat die Funktion, Javascript zu ändern, um das Verhalten zu ändern. Wenn Sie bereit sind, einen Proxyserver auszuführen, ist dies eine Option.

Ich habe nachgeschaut (wenn auch nicht vollständig) und kein Browser-Plugin gefunden, das Inhalte (xml, html, CSS oder Javascript) wie Privoxy neu geschrieben hat. Suchen Sie auf der Webseite von Privoxy nach dem Filter "js-annoyances". Hier finden Sie Beispiele für das Umschreiben von Javascript.

Möglicherweise gibt es eine modernere Implementierung in Form eines Browser-Plugins, das eine ähnliche Funktion bietet, aber Privoxy funktionierte in diesem Anwendungsfall einwandfrei.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.