`

[整理]网页自定义鼠标右键菜单特效

阅读更多

今天偶然查看一个已经关闭的网站在2003年的快照是发现的,感觉比较经典,所以整理收藏起来。

演示:http://www.yes1000.com/demo/menu/

JS文件:

程序代码 程序代码
// 菜单的HTML代码
var strMenu = "<div id=\"menu\" class=\"clsMenu\" onMouseover=\"highlight()\" onMouseout=\"lowlight()\">"
strMenu += "<div class=\"menuitems\" onClick=\"this.style.behavior='url(#default#homepage)';this.setHomePage('http://www.yes1000.com');\" >设为首页</div>"
strMenu += "<div class=\"menuitems\" onClick=\"javascript:window.external.AddFavorite('http://www.yes1000.com', '::一想千开::')\">加入收藏</div>"
strMenu += "<hr>"
strMenu += "<div class=\"menuitems\" onClick=\"javascript:location.href='http://www.yes1000.com'\">网站首页</div>"
strMenu += "<div class=\"menuitems\" onClick=\"javascript:location.href='http://www.yes1000.com/default.asp?cateID=3'\">杂七杂八</div>"
strMenu += "<div class=\"menuitems\" onClick=\"javascript:location.href='http://www.yes1000.com/default.asp?cateID=5'\">技术文档</div>"
strMenu += "<div class=\"menuitems\" onClick=\"javascript:location.href='http://www.yes1000.com/default.asp?cateID=10'\">网络杂谈</div>"
strMenu += "<div class=\"menuitems\" onClick=\"javascript:location.href='http://www.yes1000.com/default.asp?cateID=6'\">原创专区</div>"
strMenu += "<div class=\"menuitems\" onClick=\"javascript:location.href='http://www.yes1000.com/default.asp?cateID=12'\"> 经典资源</div>"
strMenu += "<hr>"
strMenu += "<div class=\"menuitems\" onClick=\"javascript:location.href='http://www.yes1000.com/LoadMod.asp?plugins=AboutMeForPJBlog'\">个人档案</a></div>"
strMenu += "<hr>"
strMenu += "<div class=\"menuitems\" onClick=\"javascript:location.href='http://www.yes1000.com/article.asp?id=78'\">和我联系</a></div>"
strMenu += "</div>"

// 判断客户端浏览器
function ie() {
     if (navigator.appName=="Microsoft Internet Explorer") {
         return true;
     } else {
         return false
}}

// 显示菜单
function showmenu(){
     if (ie()){
     // 找出鼠标在窗口中的位置
     var rightedge=document.body.clientWidth-event.clientX
     var bottomedge=document.body.clientHeight-event.clientY

     // 如果横向的距离小于菜单的宽度
     if (rightedge<menu.offsetWidth)
         // 将菜单向左移动到适当的位置
         menu.style.left=document.body.scrollLeft+event.clientX-menu.offsetWidth
     else
         // 否则,就在该位置显示菜单
         menu.style.left=document.body.scrollLeft+event.clientX

     // 与上面道理相同,判断纵向的位置
     if (bottomedge<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 (ie()) menu.style.visibility="hidden"
}

// 菜单项获得焦点时加亮显示
function highlight(){
     if (event.srcElement.className=="menuitems"){
         event.srcElement.style.backgroundColor="highlight"
         event.srcElement.style.color="highlighttext"
}}

// 菜单项失去焦点
function lowlight(){
     if (event.srcElement.className=="menuitems"){
     event.srcElement.style.backgroundColor=""
     event.srcElement.style.color="menutext"
}}

if (ie()) document.write (strMenu);
document.oncontextmenu= showmenu
document.body.onclick= hidemenu



必不可少的CSS:

程序代码 程序代码

.clsMenu {
     BORDER-RIGHT: buttonhighlight 2px outset;PADDING-top: 5px; BORDER-TOP: buttonhighlight 2px outset; VISIBILITY: hidden; BORDER-LEFT: buttonhighlight 2px outset; WIDTH: 135px; CURSOR: default; COLOR: menutext; BORDER-BOTTOM: buttonhighlight 2px outset; POSITION: absolute; BACKGROUND-COLOR: menu
}
.menuitems {
     PADDING-RIGHT: 10px; PADDING-LEFT: 20px; FONT-SIZE: 12px; COLOR: #000000; LINE-HEIGHT: 18px; FONT-FAMILY: "宋体"; TEXT-DECORATION: none
}



JS必须在body标记内调用。

分享到:
评论

相关推荐

    网页中自定义鼠标右键弹出菜单rightMenu.zip

    在网页开发中,有时我们希望实现更个性化的用户体验,其中之一就是自定义鼠标右键弹出菜单。这个"网页中自定义鼠标右键弹出菜单rightMenu.zip"文件提供了一个使用JavaScript实现这一功能的示例。下面我们将深入探讨...

    js自定义右键菜单.zip

    js自定义右键菜单是一款在网页中右击鼠标,弹窗类似windows桌面上鼠标右击效果,空白处点击右键会有相应的内容弹出。 js自定义右键菜单效果图一: 点击查看演示 js自定义右键菜单效果图二:

    jQuery自定义鼠标右键弹出菜单代码.zip

    jQuery自定义鼠标右键弹出菜单是Web开发中一种增强用户体验的常见技术,它允许用户在页面元素上点击鼠标右键时,展示一个定制化的菜单,而非浏览器默认的上下文菜单。这个压缩包包含了实现这一功能所需的全部资源,...

    jQuery仿Key社游戏风格右键菜单特效源码.zip

    如今,这种风格被巧妙地融入到了jQuery的右键菜单特效中,为网页添加了一抹别样的色彩。本文将详细介绍这款基于jQuery的Key社游戏风格右键菜单特效源码,以及如何在实际项目中运用它。 首先,我们需要理解jQuery的...

    jQuery+css3实现的非常简洁的自定义右键菜单特效源码.zip

    《jQuery与CSS3结合构建简洁右键菜单特效详解》 在网页开发中,自定义右键菜单是一项常用的功能,能够为用户提供更为丰富的交互体验。本文将深入探讨如何利用jQuery库和CSS3技术来创建一款简洁且功能强大的右键菜单...

    Bootstrap鼠标右键菜单代码.zip

    Bootstrap鼠标右键菜单代码是基于流行的前端框架Bootstrap和JavaScript实现的一种交互式功能,它允许用户在网页上的任何元素上通过鼠标右键点击打开一个自定义的下拉菜单。这种技术通常用于提供额外的操作选项,增强...

    Bootstrap鼠标右键下拉菜单特效.zip

    但是,由于这是鼠标右键菜单,你可能需要修改一些CSS规则,比如位置(position)、显示(display)以及对齐方式,确保菜单在鼠标点击的位置正确显示。 3. **JavaScript事件处理**:JavaScript是实现鼠标右键下拉...

    网页特效代码 右键菜单的制作![精华]

    自定义右键菜单可以为用户提供更加个性化的交互体验,增强网站的可用性和功能性。 ### 知识点二:使用HTML与JavaScript实现右键菜单 #### 1. HTML结构设计 示例代码中使用了`&lt;OBJECT&gt;`标签来创建一个右键菜单。`...

    jQuery实现在网页任意位置点击鼠标右键弹出菜单特效源码.zip

    总的来说,这个资源提供的源码展示了如何利用jQuery实现一个动态且可定制的鼠标右键菜单特效。通过学习和理解这段代码,开发者不仅可以掌握鼠标右键事件的处理,还能深入理解jQuery在事件处理、DOM操作和动态内容...

    Bootstrap鼠标右键菜单特效代码

    Bootstrap鼠标右键菜单特效代码是一种基于流行的前端框架Bootstrap实现的交互设计,旨在为网页增加定制化的右键快捷菜单功能。这种特效代码不仅适用于常规的文字、图片等元素,还能与Font Awesome字体图标库相结合,...

    JS仿谷歌浏览器鼠标右键菜单.zip

    【标题】"JS仿谷歌浏览器鼠标右键菜单.zip"是一个包含JavaScript和CSS代码的压缩包,目的是实现一个类似于谷歌浏览器的鼠标右键点击时显示的菜单效果。在网页开发中,这种功能可以增强用户体验,提供自定义的右键...

    jQuery鼠标右键菜单选择代码.zip

    【jQuery鼠标右键菜单选择代码】是一个用于网页开发的实用工具,它允许用户在网页上通过鼠标右键点击实现类似电脑桌面的操作体验。这个代码库的核心是jQuery库,一个广泛使用的JavaScript库,它简化了DOM操作、事件...

    js自定义右键菜单特效代码

    当用户在网页空白处或特定元素上右键点击时,JS代码可以捕获这一事件并阻止默认的浏览器右键菜单弹出,然后自定义显示一个菜单。 实现自定义右键菜单的基本步骤如下: 1. **创建HTML结构**:首先,我们需要在HTML...

    右键jQuery特效.rar_rulerzl2_which8cn_右键jQuery特效_电脑点击特效

    当用户在网页元素上按下鼠标右键时,这个事件会被触发。通过监听并自定义`contextmenu`事件,开发者可以创建自定义的右键菜单,替代或增强浏览器默认的右键选项。 【jQuery选择器】 在实现这个特效时,jQuery的选择...

    jQuery鼠标右键点击弹出菜单.zip

    这个jQuery鼠标右键菜单的实现主要涉及以下几个技术点: 1. **jQuery事件监听**:jQuery提供了便捷的方式来监听用户事件,例如`$(element).on('contextmenu', function() {...})`,这会监听到指定元素上的右键点击...

    【Jquery经典特效10】jQuery鼠标右键点击菜单代码

    总结一下,通过使用jQuery的`contextmenu`事件和CSS定位,我们可以创建自定义的鼠标右键菜单。结合HTML结构和jQuery的动画效果,我们可以实现一个既实用又美观的交互体验。记得在实际应用中,根据需求调整菜单项和...

    js固定区块右键弹出菜单代码.zip

    2. **阻止默认行为**:在事件处理函数中,通常需要使用`event.preventDefault()`来阻止浏览器默认的右键菜单显示。 3. **创建菜单**:使用DOM操作,如`document.createElement`和`appendChild`,动态生成包含菜单项...

Global site tag (gtag.js) - Google Analytics