自定义网页右键

当我们在windows桌右键的时候,可以看见一堆菜单

在网页中,点击鼠标右键,也能看见一堆菜单

那我们能不能自己定义网站右键,自己做一个菜单呢?

下面是一个自己做的实例。

  1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2 <html xmlns="http://www.w3.org/1999/xhtml">
  3 <head>
  4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5 <meta name="keywords" content="<?=$page->keywords?>" />
  6 <meta name="description" content="<?=$page->description?>"/>
  7 <title></title>
  8 <link href="css/master.css" rel="stylesheet" type="text/css" />
  9 <script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
 10 </head>
 11 
 12 <body>
 13 <div class="rmenu">
 14     <ul>
 15         <li class="first_li">
 16             <a href="#" class="lev1_a"><p>查看(V)</p></a>
 17             <dl>
 18                 <dd><a href="#"><span>大图标</span></a></dd>
 19                 <dd><a href="#"><span>中图标</span></a></dd>
 20                 <dd><a href="#"><span>小图标</span></a></dd>
 21                 <dd><a href="#"><span>没图标</span></a></dd>
 22             </dl>
 23         </li>
 24         <li class="first_li">
 25             <a href="#" class="lev1_a"><p>排序方式(O)</p></a>
 26             <dl>
 27                 <dd><a href="#"><span>名称</span></a></dd>
 28                 <dd><a href="#"><span>大小</span></a></dd>
 29                 <dd><a href="#"><span>修改日期</span></a></dd>
 30                 <dd><a href="#"><span>项目类型</span></a></dd>
 31             </dl>
 32         </li>
 33         <li class="first_li"><a href="#" class="lev1_a"><p>刷新(E)</p></a></li>
 34         <li class="first_li"><a href="#" class="lev1_a"><p>粘贴(P)</p></a></li>
 35         <li class="first_li"><a href="#" class="lev1_a"><p>粘贴快捷方式(S)</p></a></li>
 36         <li class="first_li"><a href="#" class="lev1_a"><p>撤销复制(O)</p></a></li>
 37         <li class="first_li">
 38             <a href="#" class="lev1_a"><p>新建(W)</p></a>
 39             <dl>
 40                 <dd><a href="#"><span>快捷方式</span></a></dd>
 41                 <dd><a href="#"><span>文件夹</span></a></dd>
 42                 <dd><a href="#"><span>记事本</span></a></dd>
 43                 <dd><a href="#"><span>PSD文档</span></a></dd>
 44                 <dd><a href="#"><span>EXCEL表格</span></a></dd>
 45                 <dd><a href="#"><span>WORD文档</span></a></dd>
 46             </dl>
 47         </li>
 48         <li class="first_li"><a href="#" class="lev1_a"><p>屏幕分辨率(C)</p></a></li>
 49         <li class="first_li"><a href="#" class="lev1_a"><p>个性化(R)</p></a></li>
 50     </ul>
 51 </div>
 52 
 53 <script>
 54     $(function(){
 55         $('.rmenu ul li:eq(1),.rmenu ul li:eq(5),.rmenu ul li:eq(6)').css({borderBottom:'solid 1px #ccc'});
 56         
 57         $('.rmenu ul li').each(function(i) {
 58             if($(this).children('dl').size() > 0)
 59             {
 60                 $(this).find('p').css({'background':'url(images/ico.png) right center no-repeat'});
 61             }
 62         });    
 63         
 64         $(document).bind('contextmenu',function(e){
 65             $cmenu = $('.rmenu');
 66             $('<div class="blanklayer"></div>').css({
 67                 'width':'100%',
 68                 'height':'100%',
 69                 'position':'absolute',
 70                 'top':'0',
 71                 'left':'0',
 72                 'z-index':'100'    
 73             }).click(function(){
 74                 $(this).remove();
 75                 $cmenu.hide();    
 76             }).bind('contextmenu',function(){return false;}).appendTo(document.body);
 77             $(this).find('.rmenu').css({left:e.pageX,top:e.pageY,zIndex:101}).show();
 78             return false;
 79         });    
 80         
 81         $('.rmenu ul li').live('click',function(){
 82             if($(this).children().size() == 1)
 83             {
 84                 alert($(this).children().text());
 85                 $('.rmenu').hide();
 86                 $('.blanklayer').hide();
 87             }
 88         });
 89         
 90         $('.first_li dl dd').live('click',function(){
 91             alert($(this).text());
 92             $('.rmenu').hide();
 93             $('.blanklayer').hide();    
 94         });
 95         
 96         $('.first_li,.first_li dl dd').hover(
 97             function(){
 98                 $(this).css({backgroundColor : '#E0EDFE' , cursor : 'pointer'});
 99                 if($(this).children().size() > 0)
100                 {
101                     $(this).children('dl').show();
102                 }    
103             },
104             function(){
105                 $(this).css('background-color' , '#fff' );
106                 $(this).children('dl').hide();
107         });
108         
109     });
110 </script>
111 
112 </body>
113 </html>

有reset style ,自己找一个就行

1 .rmenu {width:200px;height:auto;position:absolute;font:12px/30px 宋体;border:solid 1px #ccc;z-index:101;display:none;}
2 .rmenu ul {}
3 .rmenu ul li {width:200px;height:30px;position:relative;}
4 .rmenu ul li a.lev1_a {display:block;width:200px;height:30px;background:none;color:#555;}
5 .rmenu ul li a.lev1_a p {padding-left:15px;margin-right:10px;}
6 .rmenu ul li dl {position:absolute;left:195px;top:-5px;z-index:102;width:150px;border:solid 1px #ccc;display:none;background:#fff; box-shadow:0 0 5px #ccc;}
7 .rmenu ul li dl dd {width:150px;height:24px;border-bottom:solid 0px #ccc;}
8 .rmenu ul li dl dd a {display:block;width:150px;height:24px;font:12px/24px 宋体;background:none;color:#777;}
9 .rmenu ul li dl dd a span {padding:0 0 0 20px;}
原文地址:https://www.cnblogs.com/Sinhtml/p/4846372.html