I need to know if the user is clicking or CONTROL CLICKING a div element.. i have seen examples on how to do it using event listeners.. but my codes are already set in place, and is using an on-element onclick method..

HTML

 <div id='1' onclick='selectMe()'>blah</div>

JS

 function selectMe(){
         //determine if this is a single click, or a cntrol click 
    }

...还想知道是鼠标左键还是右键点击.

推荐答案

2021 UPDATE: There are better ways to do this now. Please be sure to check out the other answers

I'd recommend using JQuery's keyup and keydown methods on the document, as it normalizes the event codes, to make one solution crossbrowser.

对于右键点击,你可以使用oncontextmenu,但是要注意它在IE8中可能有缺陷.请参见此处的兼容性图表:

http://www.quirksmode.org/dom/events/contextmenu.html

<p onclick="selectMe(1)" oncontextmenu="selectMe(2)">Click me</p>

$(document).keydown(function(event){
    if(event.which=="17")
        cntrlIsPressed = true;
});

$(document).keyup(function(){
    cntrlIsPressed = false;
});

var cntrlIsPressed = false;


function selectMe(mouseButton)
{
    if(cntrlIsPressed)
    {
        switch(mouseButton)
        {
            case 1:
                alert("Cntrl +  left click");
                break;
            case 2:
                alert("Cntrl + right click");
                break;
            default:
                break;
        }
    }


}

Jquery相关问答推荐

我在自定义 WordPress 插件中使用 ajax 时收到错误请求

如何在外部JS文件中使用带有参数的laravel路由

Jquery each - 停止循环并返回对象

与其他 Javascript 框架相比,为什么 jQuery 被如此广泛地采用?

如何滚动到AngularJS中的页面顶部?

jQuery 中的 $this 与 $(this)

如何在 jQuery 中存储全局值(不一定是全局变量)?

JQUERY UI Accordion 开始折叠

专业的基于 jQuery 的 Combobox 控件?

从父 node 中删除所有子 node ?

复选框值始终为打开

在 jQuery UI 自动完成上没有检测到结果

使用 JQuery 激活 bootstrap 选项卡

jQuery表格行中的每个循环

查找 id 以开头的 html 元素

如何使用 JQuery $.scrollTo() 函数滚动窗口

如何使锚链接不可点击或禁用?

我可以通过 JavaScript 禁用 CSS :hover 效果吗?

在 Javascript/jQuery 中,(e) 是什么意思?

IE 中带有 jQ​​uery ajax 调用的无传输错误