网站首页 手机版
 注册 登录
您现在的位置: 畅无忧设计 >> 网页特效 >> 鼠标特效 >> 正文
最新文章
· jQuery鼠标悬停显示提示信息窗口
· 网页上记录鼠标的点击次数
· Js模拟的Windows上下文右键菜单代码
· 一个挺漂亮的鼠标跟随效果
· 用方向键来控制图片移动
· 实时动态获得鼠标在网页中X、Y坐标
· JavaScript取得按下键盘的方向键是哪
· Js用按钮检测鼠标是单击还是双击
· 给网页定义快捷键
· 鼠标跟随提示效果
热门文章
 jQuery鼠标悬停显示提示信息窗口
 用方向键来控制图片移动
 Js用按钮检测鼠标是单击还是双击
 Js模拟的Windows上下文右键菜单代码
 JavaScript取得按下键盘的方向键是
 网页上记录鼠标的点击次数
 实时动态获得鼠标在网页中X、Y坐标
 在网页中实现写字和橡皮擦的特效
 一个挺漂亮的鼠标跟随效果
 鼠标跟随提示效果
相关文章
网页中实现仿Windows右键菜单
Js模拟的Windows上下文右键菜单代码
来源:源码爱好者 更新时间:2011/4/4 3:10:50 阅读次数: 我要投稿
△运行 ☉预览 #复制 +收藏
特效代码:
<!DOCTYPE html> 
<html> 
<head> 
<title>右键菜单</title> 
<style> 
<!-- 
body{background: #222; font: 14px 'Microsoft Yahei', Arial;} 
ul,li{list-style: none;padding:0;margin:0;} 
a{text-decoration: none;color:#000;} 

#wrap { 
width: 800px; 
height: 550px; 
border:1px solid #FF9C00; 
background: #F0E6AF; 
position:relative; 
margin: .5em auto; 

#wrap ul { 
background: #eee; 
border: 1px solid #999; 
width: 150px; 
position: absolute; 
display: none; 
-moz-box-shadow: 3px 3px 9px #999; 
-webkit-box-shadow: 3px 3px 9px #999; 
-o-box-shadow: 3px 3px 9px #999; 
box-shadow: 3px 3px 9px #999; 

#wrap ul li { 
border-bottom: 1px solid #ddd; 
line-height: 24px; 

#wrap li.no {border-bottom: none;} 
#wrap ul li a { 
display: block; 
padding-left: .5em; 

#wrap ul li a:hover { 
background-color: #FFBD00; 

--> 
</style> 
<script type="text/javascript"> 
//<![CDATA[ 
function $(id) { 
return document.getElementById(id); 
}; 

var EventUnit = { 
addHandler: function(element, type, handler) {//添加事件处理程序 
if(element.addEventListener) { 
element.addEventListener(type, handler, false); 
} else if(element.attachEvent) { 
element.attachEvent('on' + type, handler); 
} else { 
element['on' + type] = handler; 
}; 
}, 
getEvent: function(event) { 
return event ? event : window.event; 
}, 
preventDefault: function(event) {//取消事件默认动作 
if(event.preventDefault) { 
event.preventDefault(); 
} else { 
event.returnValue = false; 
}; 

EventUnit.addHandler(window, 'load', function() { 
var wrap = $('wrap'); 
var menu = $('menu'); 
var menuStyle = menu.style.display; 
var x = wrap.offsetLeft + wrap.clientWidth, y = wrap.offsetTop + wrap.clientHeight; 
var w = 0, h = 0; 
var left = 0, top = 0; 

EventUnit.addHandler(wrap, 'contextmenu', function(event) { 
event = EventUnit.getEvent(event); 
EventUnit.preventDefault(event); 

menu.style.display = 'block'; 
w = menu.clientWidth; 
h = menu.clientHeight; 
left = (x - event.clientX >= w) ? event.clientX - wrap.offsetLeft : event.clientX - wrap.offsetLeft - w; 
top = (event.clientY + h <= y) ? event.clientY - wrap.offsetTop : event.clientY - wrap.offsetTop - h; 
menu.style.left = left + 'px'; 
menu.style.top = top + 'px'; 
}); 

EventUnit.addHandler(document, 'click', function() { 
menu.style.display = menuStyle; 
}); 
}); 
//]]> 
</script> 
</head> 

<body> 
<div id="wrap"> 
<p>单击右键看效果~</p> 
<ul id="menu"> 
<li><a href="#">撤销</a></li> 
<li><a href="#">重做</a></li> 
<li><a href="#">复制</a></li> 
<li><a href="#">粘贴</a></li> 
<li><a href="#">大小写转换</a></li> 
<li><a href="#">回车</a></li> 
<li><a href="#">拼写检查</a></li> 
<li><a href="#">新建</a></li> 
<li><a href="#">自定义</a></li> 
<li><a href="#">图形选项</a></li> 
<li class="no"><a href="#">关闭</a></li> 
</ul> 
</div> 
</body> 
</html>

△运行 ☉预览 #复制 +收藏
特效说明:
Js模拟的Windows上下文右键菜单代码,技术上没什么难的,就是定义一个隐藏的box,当触发上下文事件时显示它,当单击body任意处时又隐藏它。此类菜单平时,大家应该见到过。
  • 上一篇文章:
  • 下一篇文章:
  • 关于我们 - 联系我们 - 广告服务 - 在线投稿 - 友情链接 - 网站地图 - 版权声明
    CopyRight 2008-2010, CWYDESIGN.COM - 畅无忧设计, Inc. All Rights Reserved
    滇ICP备09005765号