点击左键和右键的Javascript函数

3

在我的服务器端代码中,我正在动态构建一个表格,并且现在我正在添加以下代码来处理行的点击事件。

tr.Attributes.Add("onclick", "window.open('" + root + document.IPT_Name + "/" + document.IPT_Sub_Name + "/" + document.File_Name + "', 'mywindow', 'toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,copyhistory=no, resizable=yes')");

有没有办法让这个功能只在左键点击时生效,并且在右键点击时添加不同的属性以跳转到另一个位置?

2个回答

3
您可以检测它,但是您需要注意一些特定于浏览器的问题。以下是来自http://www.quirksmode.org/js/events_properties.html的一些代码。
function doSomething(e) {
  var rightclick;
  if (!e) var e = window.event;
  if (e.which) rightclick = (e.which == 3);
  else if (e.button) rightclick = (e.button == 2);
  alert('Rightclick: ' + rightclick); // true or false
}

还有一个适用于 jQuery 的插件,可以让您检测到鼠标右键点击操作:http://abeautifulsite.net/notebook/68


0

这里是从jQuery 1.3.2中提取出来的一些代码,其中包含有关event.whichevent.button的注释。

// Add which for click: 1 == left; 2 == middle; 3 == right
// Note: button is not normalized, so don't use it
if ( !event.which && event.button )
    event.which = (event.button & 1 ? 1 : ( event.button & 2 ? 3 : ( event.button & 4 ? 2 : 0 ) ));

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接