我能从鼠标中检测到左键吗?或者Ctrl +右键单击?

时间:2010-12-01 16:45:07

标签: javascript onclick

我正在尝试检测用户是否按下了鼠标左键或右键+ ctrl键,但我不知道该怎么做。

我知道只是检测到一次点击,我可以使用

<li onClick=\"dosomething()\">

是否有功能

<li onLeftClick=\"dosomething()\"> ?

3 个答案:

答案 0 :(得分:4)

使用jQuery可以做类似

的事情
$(document).click(function(e) { 
    if (e.button == 0) {
        // was the left button
        alert('clicked'); 
    }
});

使用普通的javascript,应该可以在onClick函数中访问某种事件变量

也许这也有帮助但我不知道它是否仍然准确

http://www.javascripter.net/faq/leftvsri.htm

答案 1 :(得分:1)

您可以查看活动的button属性。

您肯定不会喜欢的是不同的浏览器返回不同的值:查看FirefoxIE的文档。因此,您还需要进行某种浏览器检测。

答案 2 :(得分:0)

你正在寻找错误的一面。 PHP是服务器端的,这意味着它在服务器上运行,而不是访问您站点的人。当有人访问您的网站时,访问者(client)会向服务器计算机发送页面请求。服务器接收该请求并向客户端发送信息。但是,当客户点击他/她的鼠标时,(默认情况下)没有任何内容发送到服务器。

解决方案取决于您需要做什么。如果您在单击某些内容时需要运行PHP脚本,请查看通过AJAX发送异步请求。您可以将AJAX调用放入dosomething()函数中。 http://www.ibm.com/developerworks/web/library/wa-ajaxintro1.html是一个很好的起点。但是,如果您熟悉jQuery,那么这是一个非常简单的函数调用:http://api.jquery.com/jQuery.ajax/