Es ist kein Weg zu sein scheint das Auslösen des Ereignisses aus zu stoppen. Die einzige Alternative scheint zu sein, die Accesskey-Attribute vorübergehend zu entfernen, während sie nicht funktionieren sollen. Das ist was jQuery UI has to do for modal dialogs.
Hier ist der Code aus diesem Thread:
$("#boxA-dialog").dialog({
autoOpen: false,
modal: true,
height: 400,
width: 300,
open: function(event, ui) {
ak = $('[accesskey]').each(function() {
$(this).data('ak', $(this).attr('accesskey')).removeAttr('accesskey')
})
},
close: function(event, ui) {
ak.each(function() {
$(this).attr('accesskey', $(this).data('ak'))
})
}
});
Wie Sie es Speichern der accesskey Attribute jQuery Daten vor dem Entfernen sie sehen kann:
$(this).data('ak', $(this).attr('accesskey')).removeAttr('accesskey')
und aus dem Daten dann wieder herstellt:
$(this).attr('accesskey', $(this).data('ak'))
Ich würde in einer Lösung interessiert sein, die die Event-Ratte tatsächlich verhindert sie als diese Problemumgehung verwenden.
Tastenkombination ist plattformabhängig, aber ich spreche von HTML-Accesskeys –
Warum nicht einfach die Attribute entfernen? – Teemu
Ich denke, das würde die Zugänglichkeit beeinträchtigen ... ist das die einzige Option? –