Est-il possible de modifier Safari pour garantir des combinaisons de touches de commande comme ⌘Hou ⌘Laller à Safari par opposition au contenu de la fenêtre de Safari?
Cela me vient le plus souvent sur ce site parce que la fenêtre de l'éditeur (comme là où je tape en ce moment) capture ces frappes pour créer des en-têtes et des liens, mais en général, cela semble être un trou de sécurité pour permettre aux sites de capturer les frappes de commande .
Veuillez noter que je cherche un moyen de le faire sans désactiver complètement JavaScript.
Pour tout ce que ça vaut, je dirige Mountain Lion.
Réponses:
Le seul moyen infaillible d'éviter d'avoir une entrée de clavier piège JavaScript est de désactiver JavaScript dans le navigateur.
Je comprends que vous souhaitez laisser JavaScript activé, mais il est conçu pour transmettre le contrôle quasi total des pressions de touches brutes au navigateur et non à l'application une fois que le système d'exploitation lui a transmis des données. Cela signifie que vous auriez besoin d'une solution de code spécifique pour chaque implémentation du filtrage du clavier sur potentiellement chaque page / site individuel pour garantir que les accords de touches arbitraires comme la commande H soient envoyés à Safari au lieu de JavaScript.
Voir ces liens pour un aperçu de la façon dont les touches sont gérées:
Le dernier lien est un testeur pour vous montrer les événements bruts et vous verrez que même un bref ⌘Q peut être piégé par JavaScript si le développeur du site le souhaite.
la source