Js+DVML:酷酷、简单、实用右键弹出菜单

提示:您可以先修改部分代码再运行

<HTML xmlns:v><HEAD>
<META http-equiv='Content-Type' content='text/html;charset=gb2312'>
<Meta name='Gemeratpr' content='网络程序员伴侣(Lshdic)2005'>
<TITLE>超酷VML菜单</TITLE>
<STYLE>
v\:*{behavior:url(#default#VML);}
.menulist{position:static;PADDING-TOP:6;LETTER-SPACING:8;HEIGHT:20;TEXT-ALIGN:center;margin-bottom:-2}
</STYLE>
</HEAD><BODY oncontextmenu='return false'>

<Script>
//作者:风云舞
var menutime1=null,showobjs1=null  //menutime1=循环计时器调用变量,showobjs1=绑定菜单,定时器过程执行时调用
function document.onmouseup(){if(event.button==2)menushow(menu2,60,10)}
function menushow(showobjs,showwid,showsudu){  //右键菜单展开函数
 //函数说明:menushow(菜单id,项平均宽度,伸展速度)
if(menutime1!=null){clearInterval(menutime1);menutime1=null}
showobjs.style.left=event.x;showobjs.style.top=event.y;
showobjs1=showobjs.all.tags("roundrect");var showlens=showobjs1.length
for(i=0;i<showlens;i++){showobjs1[i].style.width=0;showobjs1[i].style.visibility="hidden"}
showobjs.style.display=""
menutime1=setInterval("for(i=0;i<"+showlens+";i++){showobjs1[i].style.visibility='';if(showobjs1[i].offsetWidth<"+showwid+"){showobjs1[i].style.width=showobjs1[i].offsetWidth+"+showsudu+";break;}else{if(i=="+(showlens-1)+"){clearInterval(menutime1);menutime1=null}}}",20)
}
function menuclose(showobjs2,showsudu2){  //右键菜单关闭函数
 //函数说明:menushow(菜单id,关闭压缩速度)
if(menutime1!=null)return false
showobjs1=showobjs2.all.tags("roundrect");var showlens=showobjs1.length-1
menutime1=setInterval("for(i="+showlens+";i>-1;i--){if(showobjs1[i].offsetWidth>0){try{showobjs1[i].style.width=showobjs1[i].offsetWidth-"+showsudu2+";break;}catch(e){showobjs1[i].style.visibility='hidden';if(i==0){clearInterval(menutime1);menutime1=null}}}}",20)
}
</script>

<span id=menu2 style="position:absolute;Z-INDEX:40000;LEFT:395;TOP:210;color:#739EFE;cursor:hand;display:none;font-size:12px;font-family:宋体" onmouseover="if(event.srcElement.tagName=='roundrect'){event.srcElement.strokecolor='blue';event.srcElement.style.color='blue';event.srcElement.style.marginLeft=10}" onmouseout="if(event.srcElement.tagName=='roundrect'){event.srcElement.strokecolor='#739EFE';event.srcElement.style.color='#739EFE';event.srcElement.style.marginLeft=0}">
<v:roundrect class=menulist arcsize=0.5 strokecolor=#739EFE>
<v:fill type=gradient opacity=.4 color=#739EFE color2=white angle="50"/>网格</v:roundrect><br>
<v:roundrect class=menulist arcsize=0.5 strokecolor=#739EFE>
<v:fill type=gradient opacity=.4 color=#739EFE color2=white angle="50"/>矩阵</v:roundrect><br>
<v:roundrect class=menulist arcsize=0.5 strokecolor=#739EFE>
<v:fill type=gradient opacity=.4 color=#739EFE color2=white angle="50"/>分界线</v:roundrect><br>
<v:roundrect class=menulist arcsize=0.5 strokecolor=#739EFE>
<v:fill type=gradient opacity=.4 color=#739EFE color2=white angle="50"/>刷新</v:roundrect><br>
<v:roundrect class=menulist arcsize=0.5 strokecolor=#739EFE>
<v:fill type=gradient opacity=.4 color=#739EFE color2=white angle="50"/>设置</v:roundrect><br>
<v:roundrect class=menulist arcsize=0.5 strokecolor=#739EFE>
<v:fill type=gradient opacity=.4 color=#739EFE color2=white angle="50"/>项</v:roundrect><br>
<v:roundrect class=menulist arcsize=0.5 strokecolor=#739EFE>
<v:fill type=gradient opacity=.4 color=#739EFE color2=white angle="50"/>项.</v:roundrect><br>
<v:roundrect class=menulist arcsize=0.5 strokecolor=#739EFE>
<v:fill type=gradient opacity=.4 color=#739EFE color2=white angle="50"/>项..</v:roundrect><br>
<v:roundrect class=menulist arcsize=0.5 strokecolor=#739EFE>
<v:fill type=gradient opacity=.4 color=#739EFE color2=white angle="50"/>项...</v:roundrect><br>
<v:roundrect class=menulist arcsize=0.5 strokecolor=#739EFE onmouseup="menuclose(menu2,30)">
<v:fill type=gradient opacity=.4 color=#739EFE color2=white angle="50"/>取消</v:roundrect>
</span>

提示:您可以先修改部分代码再运行

时间: 2024-09-20 06:06:26

Js+DVML:酷酷、简单、实用右键弹出菜单的相关文章

jquery实现简单实用的弹出层效果代码_jquery

本文实例讲述了jquery实现简单实用的弹出层效果.分享给大家供大家参考.具体如下: 目前来说,我还是喜欢这个自己改造的弹出层,在项目中用的也是这个.引入了新版的jquery插件,方框及文字都可以自己定义,非常方便,希望大家也喜欢这款弹出层,JavaScript在本例中也充分发挥了作用,对学习JS也是不错的参考. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/jquery-simple-alert-style-demo/ 具体代码如下: <!D

Android实现类似于PC中的右键弹出菜单效果_Android

 Android系统中的ContextMenu(上下文菜单)类似于PC中的右键弹出菜单,当一个视图注册到一个上下文菜单时,执行一个在该对象上的"长按"动作,将出现一个提供相关功能的浮动菜单.上下文菜单可以被注册到任何视图对象中,不过,最常见的是用于列表视图ListView的item,在按中列表项时,会转换其背景色而提示将呈现上下文菜单. 注意:上下文菜单不支持图标和快捷键. 为了创建一个上下文菜单,你必须重写这个活动的上下文菜单回调函数:onCreateContextMenu() 和

javascript自定义右键弹出菜单实现方法_javascript技巧

本文实例讲述了javascript自定义右键弹出菜单实现方法.分享给大家供大家参考.具体实现方法如下: <head runat="server"> <title>无标题页</title> <script type="text/javascript"> var oPopup = window.createPopup(); function PopMenu(id) { var oPopBody = oPopup.docum

树的右键弹出菜单怎么实现

问题描述 树的右键弹出菜单怎么实现? 解决方案 解决方案二:放一个层当button==2的时候显示解决方案三:http://free.2259.com/jscode.asp?js_id=1020解决方案四:还要根据鼠标确定层显示的位置吧.应该也是JS操作的.具体米有实现过.-.-解决方案五:jsif(Event.button==2)show();

pb右键弹出菜单的编程

作者:达通兴电脑科技公司(www.study01job.com) 郭宝利 使用右键弹出菜单功能可以解决该问题,用到函数PopMenu.比如,我们创建了菜单m_main,里面包含若干个下拉菜单,其中的m_edit是用来编辑的.我们在用户点击鼠标右键时希望弹出该编辑菜单,可以如下编写脚本: m_main lm_pop lm_pop = CREATE m_main lm_pop.m_edit.PopMenu(PointerX(), PointerY())

javascript自定义右键弹出菜单实现方法

  本文实例讲述了javascript自定义右键弹出菜单实现方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 <head runat="server"> <title>无标题页</title> <script type="text/javascript&q

opengl-openGL glutinit()右键弹出菜单

问题描述 openGL glutinit()右键弹出菜单 void createGLUTMenus() { int menu; //glutInit(&argc,argv); // 创建菜单并告诉GLUT,processMenuEvents处理菜单事件. menu = glutCreateMenu(processMenuEvents); glutAddMenuEntry("addObstacle",OBSTACLE); glutAddMenuEntry("addSmo

MFC创建右键弹出菜单的方法_C 语言

本文实例讲述了MFC创建右键弹出菜单的方法.分享给大家供大家参考.具体实现方法如下: ①.添加一个菜单资源,ID为IDM_RIGHTMENU.因为在显示右键菜单时顶级菜单是不显示的,所以可以给它设置任意文本. ②.给视类添加WM_RBUTTONDOWN消息,在该消息中处理右键弹出菜单.因为视类窗口始终覆盖在框架窗口之上,框架窗口接收不到鼠标消息,所以由视类捕获WM_RBUTTONDOWN消息. 复制代码 代码如下: void CMenuView::OnRButtonDown(UINT nFlag

问题:右键弹出菜单

问题描述 在具体项目中碰到了这样一个问题:在c/s下,模仿Windows菜单,用C#实现一个"鼠标右击,弹出菜单",要求:选中菜单上某子项时,其前面要求打上对号,同时,菜单子项前要添加图片.右键弹出菜单好实现,主要是前面要加对号,或者加图片,比如压缩软件的图标等,本人不知道怎样实现了,请高手给指点指点,最好有相关的案例作为参考,谢谢!!!!! 解决方案 解决方案二:用ContextMenuStrip控件解决方案三:我没用过这样的