Penso che non sia possibile farlo utilizzando solo JavaScript. Diamo in questo modo:
consideri la seguente situazione:
Sto usando un pro Retina Display 13in Macbook, con multi touch e multi gesture touchpad.
Ora Supponiamo che nel mio sistema operativo disponga di impostazioni gestuali che se tocco due dita, lo registro come un normale clic sinistro e quando tocco un dito, registrarlo come clic con il pulsante destro del mouse.
Ora immaginiamo di catturare entrambi gli eventi, click
e dblclick
, ora indica quale evento verrà generato quando eseguirò un singolo tocco con un dito. Sarà un dblclick
e, quando eseguirò un tocco con due dita, verrà generato l'evento click
.
Un altro caso: Immagina di avere lo scorrimento invertito attivato nel mio computer, ora quando farò scorrere verso l'alto la mia pagina scorrerà verso il basso. E questo è qualcosa che chrome/firefox non sta controllando.
Conclusione: Non ci può essere variato il numero di tali impostazioni attraverso vari tipi di sistema operativo, attraverso vario numero di dispositivi come trackpad, trackball, touchpad, il mouse, il mouse magia ecc Questo mi dà una sensazione che non ci è uno strato tra l'hardware esterno e il browser che rileva gli eventi di attivazione e questo strato è fornito dal sistema operativo. Il suo sistema operativo che manipola gli eventi in base alle impostazioni definite dall'utente/preset.
Ci possono essere dispositivi che intendono fornire e generare più eventi come dispositivo touch, al tocco attivano più eventi. Ma questo non è il caso di tutti i dispositivi. Quindi non importa se clicchi dal mouse o dalla trackball o dal touchpad o dal touch screen otterrai un evento comune che è uno click
, c'è sicuramente la possibilità che altri eventi vengano lanciati ma sono dipende dal tipo di dispositivo e non dalle impostazioni effettuate nel sistema operativo.
Un modo per catturare l'evento è stabilendo una sorta di connettività tra la pagina Web del browser e il sistema operativo come suggerito da @AlvaroSanz.
Non è possibile. Non esiste una tale API. –