0

javascript(jquery OK)を使用して、shift + option + command +オブジェクトの左クリックでイベントを発生させるにはどうすればよいですか?

$(document).on('keypress', function(e) {
        if( e.keyCode == 224 && e.keyCode == 16 && e.keyCode == 18 ){
               console.log('keys pressed');
        }
});

キーをログに記録するには、このようなものが機能するはずです(ただし、まったく機能しません^^)。また、クリックを追跡するにはどうすればよいですか?

ありがとう!

4

1 に答える 1

1

これを試して:

ライブデモ (Mac OS用):http://jsfiddle.net/NDuDZ/2/

コード:

//Combination: Shift+Option+Command+LeftClick

//Shift Firefox, Safari, Chrome, Opera keyCode: 16
//Option Firefox, Safari, Chrome, Opera keyCode: 18
//Command Firefox keyCode: 224
//Command Chrome, Safari keyCode: 91
//Command Opera keyCode: 17

var isOption = false;
var isCommand = false;
var isLeftClick = false;

$(document).on('keyup', function(e){
    if(e.which == 91 || e.which == 224 || e.which == 17) isCommand = false;
    if(e.which == 18) isOption = false;
});

$(document).on('click', function(e){
    isLeftClick = true;
});

$(document).on('keyup', function(e){
    if(e.which == 91 || e.which == 224 || e.which == 17) isCommand = true;
    if(e.which == 18) isOption = true;
    if(e.which == 16 && isOption && isCommand && isLeftClick) {
       alert('Shift+Option+Command+LeftClick invoked!');
       e.preventDefault();
    }
});
于 2012-08-13T16:47:17.730 に答える