1

Flash ムービーから (ExternalInterface を使用して) HTML ページで Javascript 関数を呼び出しています。関数が呼び出されたときにユーザーが Shift キーを押しているかどうかを知りたいです。

たとえば、マウス クリックから関数を呼び出すと、イベントを渡して「if (event.shiftKey)」をチェックできるため、簡単に思えます。確認するイベントがありません。

どうもありがとう

クリス

4

1 に答える 1

9

keydownページの にandkeyupイベントをアタッチdocumentし、シフト キーをリッスンします。

var shiftDown = false;
var setShiftDown = function(event){
    if(event.keyCode === 16 || event.charCode === 16){
        window.shiftDown = true;
    }
};

var setShiftUp = function(event){
    if(event.keyCode === 16 || event.charCode === 16){
        window.shiftDown = false;
    }
};

window.addEventListener? document.addEventListener('keydown', setShiftDown) : document.attachEvent('keydown', setShiftDown);
window.addEventListener? document.addEventListener('keyup', setShiftUp) : document.attachEvent('keyup', setShiftUp);
于 2012-06-19T13:09:32.263 に答える