On dirait que Opera/Mac ne vous permet pas de remplacer une action lorsque l'utilisateur appuie sur (S (la page par défaut est, bien sûr, la page de sauvegarde). J'ai découvert que mon ancien script ne fonctionne pas. Il enregistre le contenu du formulaire sur le serveur via Ajax.Opera/Mac: remplacer l'événement cmd + S?
Voici un onkey * gestionnaire:
key = ev.keyCode
if (!key) key = ev.charCode
if (ev.type == 'keypress' && 115 == key && ev.ctrlKey) return false
if (83 == key && ev.ctrlKey) {
if (ev.type != 'keypress') save_text()
return false
}
La première bizarrerie de l'Opéra/Mac est qu'il génère ctrlKey sur ⌘ clé au lieu de la clé réelle Ctrl
. Donc, dans Safari, celui-ci fonctionne parfaitement en remplaçant l'action standard par la mienne. Mais dans Opera, il ignore complètement^S, car ctrlKey est ⌘ pour cela, mais ⌘S apporte la boîte de dialogue de sauvegarde standard, peu importe ce que vous faites. J'essayais de surveiller toute la séquence d'événements key * dans Opera quand j'appuie sur ⌘S et que c'est keydown avec keyCode 17, puis pressez avec keyCode 17, et les deux se produisent après que j'appuie sur ⌘. Aucun événement n'est généré après que j'appuie sur S.
Donc, il semble que je n'ai pas de chance. Quelqu'un a-t-il une idée sur la façon de forcer Opera à me laisser passer outre ⌘S? :-)
Oui Oui. (* requis - au moins 15 caractères) –
Cela semble ne pas fonctionner en effet. Peut-être jeter un rapport à https://bugs.opera.com/wizard/ .. – hallvors