Ctrl +鼠标在Mac中单击(多个选择)

时间:2014-09-02 15:28:33

标签: javascript jquery mouseevent keyevent

我将使用Ctrl + Left-mouse点击多个选择对象使用javascript / jquery。

以下是我在jQuery中使用的内容,我在windows' chrome中测试它很好并且可以用于多个选择,但是,当我使用Mac Sarifa打开页面并进行多项选择时,它出现了一些问题: 当我按住control键并单击一个对象时,我会选择contextmenu。(似乎Mac有此默认设置,就像右键单击{{ 1}})但是,我不希望这个菜单显示,我只是想它可以像windows一样,我该怎么办?任何建议都表示赞赏,谢谢。

windows

1 个答案:

答案 0 :(得分:1)

在Mac OSX中,实现多重选择的适当方法是使用CMD密钥。它在所有本机应用程序和IMO中都是这样的,它应该在浏览器中以相同的方式工作。我建议你检查鼠标事件处理程序中的键,而不是将键存储在keydown上并在keyup上重置它,如下所示:

function isMac() {
    return navigator.userAgent.indexOf('Mac OS X') != -1;
}

$(document).bind('mousedown', function (e) {
    if (isMac() && e.metaKey || !isMac() && e.ctrlKey) {
        // Multiple selection
    }
});

isMac的实现取自此处 - http://css-tricks.com/snippets/javascript/test-mac-pc-javascript/