使用Javascript在特定的地方拦截鼠标右键

以前在CSDN上发过,后来发现初始版本有点小问题,在评论里面修正了一下,这里发个完整版本。

想写一个网页,上面好多链接。左键点击链接打开页面。右键点击后使用AJAX加载链接页面的简介。

当然,你可以在任何地方实现特定的右键点击动作。只需要使用event.srcElement.id或event.srcElement.name即可获得你的鼠标点击的对象。如果是在页面上点击的话,以上两个变量的值应该是空。



链接上使用OnClick事件只能响应左键点击。这里写出我的实现方法。

xhtml代码
  1. <script> 
  2. function Ontest()  
  3. {     
  4.     var logid = event.srcElement.id;  
  5.     if(logid == "" || logid.indexOf("log"))  
  6.         return false;  
  7.         //这样的话,右键点击非log打头的链接或在页面上其他地方点击右键仍然会出现右键菜单  
  8.  
  9.     if(event.button==1)  
  10.         return true;  
  11.  
  12.     if(event.button!=1)  
  13.     {  
  14.        alert("右键点击了ID为"+ event.srcElement.id +"的链接");  
  15.        //event.srcElement.id可以根据一定形式来构造,这样它可以当参数使用  
  16.        document.getElementById("testp").innerHTML = event.srcElement.id;  
  17.        return false;  
  18.     }  
  19. }  
  20.  
  21. document.onmousedown = function()  
  22. {  
  23.     var result = Ontest();  
  24.     return result;  
  25. }  
  26. </script> 
  27.  
  28. <a id="log2" href="page.php">test</a> 
  29. <a id="log1" href="#">test</a> 
  30. <a id="test" href="#">test</a> 
  31. <div id="testp">text</div> 

 

Tags: javascript
上一篇: AJAX与PHP传递中文数据
下一篇: 迷你英汉字典

相关日志推荐
DOM的一些操作
ajax中文乱码问题解决(PHP)
基于jquery的随机软键盘
AJAX与PHP传递中文数据

0 条留言

发表评论

  
  
   (点击图片更换验证码)
点击刷新验证码