2010-12-15 10 views
22

Estoy tratando de anular el acceso directo de guardar el navegador es decir (cntrl + s) para dar la funcionalidad de guardar en mi aplicación web, estoy usando google chrome ... Intenté keydown listner para observar el código clave, pero cuando se presionan simultáneamente dos teclas, es decir, (cntrl + s), el código clave de s nunca se devuelve en el objeto de evento.Overrining control + s (guardar funcionalidad) en el navegador

Gracias de antemano

Trax

Respuesta

31

Se reciben dos eventos keydown: El primero es para la tecla de control, y el segundo es para la letra con la bandera modificador de encendido. Así es como se escucha de una llave con un modificador presionado:

document.addEventListener("keydown", function(e) { 
    if (e.keyCode == 83 && (navigator.platform.match("Mac") ? e.metaKey : e.ctrlKey)) { 
    e.preventDefault(); 
    // Process event... 
    } 
}, false); 

Tomando una página de Google Docs, que utiliza Comando-S en Mac y Ctrl-S en otras plataformas.

Cuestiones relacionadas