第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

jQuery .keypress()可以同時檢測多個鍵嗎?

jQuery .keypress()可以同時檢測多個鍵嗎?

蠱毒傳說 2019-09-21 14:56:13
jQuery是否有辦法檢測到同時按下了多個鍵?是否有其他選擇可以同時按下兩個鍵?
查看完整描述

3 回答

?
當(dāng)年話下

TA貢獻1890條經(jīng)驗 獲得超9個贊

這取決于。對于“正?!钡蔫€匙,這意味著非Shift,Ctrl,ALT,( CMD),答案是否定的,該事件處理程序?qū)②s上/火在隊列中,一個接一個。


對于我上面提到的修飾鍵,事件對象上有一個屬性。


例:


$(document).bind('keypress', function(event) {

    if( event.which === 65 && event.shiftKey ) {

        alert('you pressed SHIFT+A');

    }

});


其他屬性是:


event.ctrlKey

event.altKey

event.metaKey


查看完整回答
反對 回復(fù) 2019-09-21
?
隔江千里

TA貢獻1906條經(jīng)驗 獲得超10個贊

如果您只想在連續(xù)按下多個鍵時觸發(fā)處理程序,請嘗試以下操作:


jQuery.multipress = function (keys, handler) {

    'use strict';


    if (keys.length === 0) {

        return;

    }


    var down = {};

    jQuery(document).keydown(function (event) {

        down[event.keyCode] = true;

    }).keyup(function (event) {

        // Copy keys array, build array of pressed keys

        var remaining = keys.slice(0),

            pressed = Object.keys(down).map(function (num) { return parseInt(num, 10); }),

            indexOfKey;

        // Remove pressedKeys from remainingKeys

        jQuery.each(pressed, function (i, key) {

            if (down[key] === true) {

                down[key] = false;

                indexOfKey = remaining.indexOf(key);

                if (indexOfKey > -1) {

                    remaining.splice(indexOfKey, 1);

                }

            }

        });

        // If we hit all the keys, fire off handler

        if (remaining.length === 0) {

            handler(event);

        }

    });

};

例如,要在圣火上


jQuery.multipress([83, 84], function () { alert('You pressed s-t'); })


查看完整回答
反對 回復(fù) 2019-09-21
  • 3 回答
  • 0 關(guān)注
  • 804 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號