zoukankan
html css js c++ java
一个右键菜单代码
<
html
>
<
head
>
<
meta
http-equiv
="Content-Type"
content
="text/html; charset=gb2312"
>
<
title
>
XP右键菜单
</
title
>
<
script
>
//
---------这段代码可以放在一个js文件里方便导入-------------
//
菜单初试化
var
MenuItem
=
""
var
strMenu
var
sp
=
true
//
使用特效设置,false表示不是用特效
var
ts
=
6
//
添加菜单项目
function
addmenu(type,caption,url,target,icon)
{
if
(
!
icon)
iconpath
=
"
attachments/month_0406/vsjz_blank.gif
"
;
//
默认图标路径
else
iconpath
=
icon
switch
(type)
{
case
0
:
if
(
!
target)
{
MenuItem
+=
"
<tr height=24><td><td class=loseitems onClick=\
"
javascript:location.href
=
'
"+url+"
'
\
"
background=
"
+
iconpath
+
"
>
"
+
caption
+
"
<td>
"
}
else
{
if
(target
==
'
_blank
'
)
{
MenuItem
+=
"
<tr height=24><td><td class=loseitems onClick=\
"
javascript:window.open(
'
"+url+"
'
)\
"
background=
"
+
iconpath
+
"
>
"
+
caption
+
"
<td>
"
}
else
{
MenuItem
+=
"
<tr height=24><td><td class=loseitems onClick=\
"
javascript:
"
+target+
"
.location.href
=
'
"+url+"
'
\
"
background=
"
+
iconpath
+
"
>
"
+
caption
+
"
<td>
"
}
}
break
;
case
1
:
MenuItem
+=
"
<tr height=24><td><td class=loseitems onClick=\
"
javascript:
"
+url+
"
\
"
background=
"
+
iconpath
+
"
>
"
+
caption
+
"
<td>
"
break
;
case
2
:
MenuItem
+=
"
<tr><td><td align=right colspan=2><hr>
"
break
;
}
}
//
建立菜单
function
buildmenu()
{
strMenu
=
"
<div id=\
"
menu\
"
class=\
"
clsMenu\
"
>
"
strMenu
+=
"
<table border=0 cellspacing=0 width=100% cellpadding=0 onMouseover=\
"
highlight()\
"
onMouseout=\
"
lowlight()\
"
><tr height=1><td width=1><td><td width=1>
"
strMenu
+=
MenuItem
strMenu
+=
"
<tr height=1><td><td><td></table>
"
strMenu
+=
"
</div>
"
if
(isie()) document.write (strMenu);
document.oncontextmenu
=
showmenu
document.body.onclick
=
hidemenu
}
//
判断客户端浏览器
function
isie()
{
if
(navigator.appName
==
"
Microsoft Internet Explorer
"
)
{
return
true
;
}
else
{
return
false
;
}
}
//
显示菜单
function
showmenu()
{
if
(isie())
{
var
redge
=
document.body.clientWidth
-
event.clientX
var
bedge
=
document.body.clientHeight
-
event.clientY
if
(redge
<
menu.offsetWidth)
menu.style.left
=
document.body.scrollLeft
+
event.clientX
-
menu.offsetWidth
else
menu.style.left
=
document.body.scrollLeft
+
event.clientX
if
(bedge
<
menu.offsetHeight)
menu.style.top
=
document.body.scrollTop
+
event.clientY
-
menu.offsetHeight
else
menu.style.top
=
document.body.scrollTop
+
event.clientY
menu.style.visibility
=
"
visible
"
}
return
false
}
//
隐藏菜单
function
hidemenu()
{
if
(isie()) menu.style.visibility
=
"
hidden
"
}
//
菜单项获得焦点时加亮显示
function
highlight()
{
if
(event.srcElement.className
==
"
loseitems
"
)
{
if
(sp)
{event.srcElement.style.filter
=
"
revealTrans(duration=.1)
"
;event.srcElement.filters[
0
].transition
=
ts}
if
(sp) event.srcElement.filters[
0
].apply();
event.srcElement.className
=
"
menuitems
"
if
(sp) event.srcElement.filters[
0
].play();
}
}
//
菜单项失去焦点
function
lowlight()
{
if
(event.srcElement.className
==
"
menuitems
"
)
{
if
(sp) event.srcElement.style.filter
=
"
blendtrans(duration=.15)
"
;
if
(sp) event.srcElement.filters[
0
].apply();
event.srcElement.className
=
"
loseitems
"
if
(sp) event.srcElement.filters[
0
].play();
}
}
//
--------------js代码结束-------------
</
script
>
<
script
>
//
------------插入菜单项目演示---------
//
addmenu(type,caption,url,target,icon)
//
type=0 超连接 type=1 执行javascript语句 type=2 分割线
//
caption 显示文字
//
url 地址或javascript语句
//
target 目标
//
icon 图标
addmenu(
1
,
"
关于我
"
,
"
alert('我是舜子 英文名PuterJam')
"
,
""
,
"
attachments/month_0406/jg_n_help.gif
"
)
addmenu(
0
,
"
我的Blog
"
,
"
http://www.sunsinwa.com/puterjam/
"
,
"
_blank
"
)
addmenu(
1
,
"
添加到收藏夹
"
,
"
window.external.AddFavorite('http://www.sunsinwa.com/puterjam/', 'PuterJam Blog')
"
)
addmenu(
0
,
"
联系我
"
,
"
mailto:puterjam@etang.com
"
,
"
_blank
"
)
addmenu(
2
)
addmenu(
0
,
"
蓝色理想
"
,
"
http://www.blueidea.com/
"
,
"
_blank
"
)
addmenu(
0
,
"
经典论坛
"
,
"
http://www.blueidea.com/bbs
"
,
"
_blank
"
)
addmenu(
2
)
addmenu(
1
,
"
动画效果:<span id=kg>ON<span>
"
,
"
sp=!sp;if (sp) {kg.innerText='ON'} else {kg.innerText='OFF'}
"
)
addmenu(
1
,
"
上一个效果
"
,
"
ts--;if (ts<1) ts=23
"
)
addmenu(
1
,
"
下一个效果
"
,
"
ts++;if (ts>23) ts=1
"
)
buildmenu()
</
script
>
<
style
>
.clsMenu
{
}
{
cursor
:
default
;
color
:
#000000
;
position
:
absolute
;
width
:
150px
;
background-color
:
#D4D0C8
;
border
:
1px solid #000000
;
visibility
:
hidden
;
filter
:
progid:DXImageTransform.Microsoft.Shadow(direction=135,color=#cccccc,strength=3)
;
background-image
:
url('attachments/month_0406/84v__back.gif')
}
.menuitems
{
}
{
font-size
:
12px
;
color
:
#000000
;
padding-left
:
30px
;
padding-right
:
19px
;
padding-top
:
2px
;
padding-bottom
:
0px
;
line-height
:
18px
;
background-color
:
#B6BDD2
;
border
:
1px solid #0A246A
;
color
:
#000000
;
background-repeat
:
no-repeat
;
}
.loseitems
{
}
{
font-size
:
12px
;
color
:
#000000
;
padding-left
:
29px
;
padding-right
:
10px
;
padding-top
:
1px
;
padding-bottom
:
1px
;
line-height
:
18px
;
color
:
#000000
;
background-repeat
:
no-repeat
;
}
hr
{
}
{
width
:
80%
;
height
:
1px
;
}
</
style
>
</
head
>
<
body
>
</
body
>
</
html
>
查看全文
相关阅读:
sql server 中having 的使用注意事项
js截取字符串
.net截取字符串
序列化二叉树
把二叉树打印成多行
35 拷贝赋值函数、虚函数
34 char类型转换为int类型
33 单/双精度有效数字、程序运行过程
32 C++常见错误集锦
31 位域、空类的sizeof值
原文地址:https://www.cnblogs.com/zq535228/p/1041979.html
最新文章
服务器上启动pip报错问题
Oracle历史查询记录
hive查询不显示表头的问题
代码的时间和空间复杂度
form中submit提交,点击删除增加提示
ASP.NET Core MVC学习笔记(三)
ASP.NET Core MVC学习笔记(二)
ASP.NET Core MVC学习笔记(一)
EF中左连接
NPOI 读取excel到DataTable读取公式列
热门文章
postman使用文件测试多个测试用例之post方法
postman使用文件测试多个测试用例之get方法
notepad加加中给数字加标题
宏脚本链接数据库
关于C# yield 你会使用吗?
C# 创建单例你会几种方式?
递归的精髓是什么?
C# 委托及匿名函数
C# 基础回顾
关于 sql server 基本使用的建议
Copyright © 2011-2022 走看看