一个轻量级的XHTML右键菜单[支持IE和firefox]

时间:2024-04-19 10:58:32 

目前很多在网络上流传的右键菜单都不支持XHTML,主要就是因为document.body和document.documentElement之间的不同造成的 
还有一个就是很多右键菜单程序太大,于是自己写了一个迷你型的右键菜单,支持IE和firefox

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title>adad</title><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><style>#rightMenu{ padding:2px; background-color:menu; cursor:default; position:absolute; z-index:900; border-right:1px solid #aaa; border-bottom:1px solid #aaa; border-top:1px solid #fff; border-left:1px solid #fff; font-size:14px; word-break:keep-all;}.menuItem{ display:block; padding:3px;}</style><script>/** *JRightMenu类,在浏览器里显示用户定制右键菜单 *[注意]:只适用于XHTML *@author brull *@email brull@163.com *@date 2007-01-24 *//** *@param menuItem 菜单显示内容,是一个数组 *@param handle 对应menuItem菜单的处理js代码段,同样是个数组 */JRightMenu=function (menuItem,handle){ var rightMenu=document.createElement("div"); var menuInnerHTML="";//菜单容器里的HTML内容 var $items=this.menuItem=menuItem; var $handle=this.handle=handle; rightMenu.id="rightMenu";//id for(var i in $items){  if($items[i].indexOf("<hr")!=-1)   menuInnerHTML+=$items[i];  else   menuInnerHTML+=""   +$items[i]   +""; } rightMenu.innerHTML=menuInnerHTML; rightMenu.style.visibility = "visible"; rightMenu.onmousedown=function(e){  e=e||window.event;  document.all?e.cancelBubble=true:e.stopPropagation(); } rightMenu.onselectstart=function(){  return false; } document.body.appendChild(rightMenu); this.menu=rightMenu;//方便别的方法引用};JRightMenu.prototype.show=function(e){ e=e||window.event; var root=document.documentElement; var x = root.scrollLeft+e.clientX;//菜单左上角横坐标 var y = root.scrollTop+e.clientY;//菜单左上角纵坐标 if (this.menu.clientWidth+e.clientX > root.clientWidth){  x=x-this.menu.clientWidth; } if (this.menu.clientHeight+e.clientY > root.clientHeight){  y=y-this.menu.clientHeight; } this.menu.style.left = x+"px";  this.menu.style.top = y+"px";  this.menu.style.visibility = "visible"; return false;}JRightMenu.prototype.hidden=function() {  this.menu.style.visibility = "hidden";}</script><script>window.onload=function(){rightMenu=new JRightMenu(["it&#146;s mine!","it&#146;s yours!"],["alert(&#146;it is mine!&#146;)","alert(&#146;it is yours!&#146;)"]);}document.oncontextmenu=function(evt){return rightMenu.show(evt);};document.onclick=function(){rightMenu.hidden();}</script></head><body><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p><p>adadad大王大王</p>awdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd</body></html>
标签:一个轻量级的XHTML右键菜单[支持IE和firefox]
0
投稿

猜你喜欢

  • 从零学python系列之教你如何根据图片生成字符画

    2022-04-03 16:05:50
  • MySQL进阶之索引

    2024-01-23 11:54:09
  • Python网络爬虫之爬取微博热搜

    2021-08-31 02:53:50
  • Python基于多线程实现ping扫描功能示例

    2023-08-02 17:30:09
  • php进程daemon化的正确实现方法

    2023-10-01 09:14:09
  • 事件检测

    2009-04-11 18:03:00
  • 一些SQL查询语法参考

    2007-10-14 11:56:00
  • go日志库logrus的安装及快速使用

    2024-04-26 17:31:40
  • 使用sqlserver存储过程sp_send_dbmail发送邮件配置方法(图文)

    2024-01-21 23:55:50
  • python基础教程之序列详解

    2021-05-29 23:52:04
  • Python Requests安装与简单运用

    2023-09-26 22:02:15
  • python开发利器之ulipad的使用实践

    2021-07-25 00:55:17
  • asp如何同时处理数据库和页面错误?

    2010-06-07 20:58:00
  • Python实现EXCEL表格的排序功能示例

    2021-05-17 20:50:11
  • python中Requests请求的安装与常见用法

    2022-08-15 20:36:35
  • pytorch点乘与叉乘示例讲解

    2021-01-24 15:43:15
  • python中文件操作与异常的处理图文详解

    2021-09-04 16:04:33
  • python学生信息管理系统

    2022-10-16 11:43:04
  • mysql 各种时间段查询

    2010-01-06 13:37:00
  • PHP如何利用P3P实现跨域

    2023-11-23 20:16:58
  • asp之家 网络编程 m.aspxhome.com