`

jquery 右键菜单

 
阅读更多
jQuery contextMenu

<div class="context-menu-one box menu-1">
    <strong>right click me</strong>
</div>


$(function(){
    $.contextMenu({
        selector: '.context-menu-one', 
        callback: function(key, options) {
            var m = "clicked: " + key;
            window.console && console.log(m) || alert(m); 
        },
        items: {
            "edit": {name: "Edit", icon: "edit"},
            "cut": {name: "Cut", icon: "cut"},
            "copy": {name: "Copy", icon: "copy"},
            "paste": {name: "Paste", icon: "paste"},
            "delete": {name: "Delete", icon: "delete"},
            "sep1": "---------",
            "quit": {name: "Quit", icon: "quit"}
        }
    });
    
    $('.context-menu-one').on('click', function(e){
        console.log('clicked', this);
    })
});



jquery 简短右键菜单 多浏览器兼容
http://www.jb51.net/article/21699.htm
$(function () {
    document.oncontextmenu = function () {
        return false;
    }//屏蔽右键 
    document.onmousemove = mouseMove;//记录鼠标位置 
});
var mx = 0, my = 0;
function mouseMove(ev) {
    Ev = ev || window.event;
    var mousePos = mouseCoords(Ev);
    mx = mousePos.x;
    my = mousePos.y;
}
function mouseCoords(ev) {
    if (ev.pageX || ev.pageY) {
        return{x: ev.pageX, y: ev.pageY};
    }
    return{x: ev.clientX, y: ev.clientY + $(document).scrollTop()};
}

$.fn.extend({RightMenu: function (id, options) {
    options = $.extend({menuList: []}, options);
    var menuCount = options.menuList.length;
    if (!$("#" + id)[0]) {
        var divMenuList = "<div id=\"" + id + "\" class=\"div_RightMenu\"><div><ul class='ico'>";
        for (var i = 0; i < menuCount; i++) {
            divMenuList += "<li class=\"RMli_" + options.menuList[i].menuclass + "\" onclick=\"" + options.menuList[i].clickEvent + "\">" + options.menuList[i].menuName + "</li>";
        }
        divMenuList += "</ul></div><div>";
        $("body").append(divMenuList).find("#" + id).hide().find("li")
            .bind("mouseover", function () {
                $(this).addClass("RM_mouseover");
            })
            .bind("mouseout", function () {
                $(this).removeClass("RM_mouseover");
            });
        $(document).click(function () {
            $("#" + id).hide();
        });
    }
    return this.each(function () {
        this.oncontextmenu = function () {
                    /*这段 判断鼠标移到页面的最右侧或者最下侧 防止出现滚动条 {*/
            var mw = $('body').width(), mhh = $('html').height(), mbh = $('body').height(),
                w = $('#' + id).width(), h = $('#' + id).height(),
                mh = (mhh > mbh) ? mhh : mbh;//最大高度 比较html与body的高度 
            if (mh < h + my) {
                my = mh - h;
            }//超 高 
            if (mw < w + mx) {
                mx = mw - w;
            }
            //超 宽 
                  /*} 当然也可以直接跳过*/
            $("#" + id).hide().css({top: my, left: mx}).show();
        }
    });
}
});
分享到:
评论

相关推荐

    jquery右键菜单实现

    而"jQuery右键菜单实现"是一个常见的需求,它允许用户在网页元素上右击鼠标时弹出一个自定义的菜单,提供额外的功能或选项。这个功能通常通过jQuery插件来实现,例如`jQuery contextMenu`。 `jQuery contextMenu`是...

    jquery 右键菜单功能

    **一、理解jQuery右键菜单的基本原理** jQuery右键菜单功能主要是通过监听鼠标右键点击事件(`contextmenu`)来触发自定义的菜单展示。当用户在网页上右键点击时,JavaScript会阻止浏览器默认的右键菜单弹出,然后...

    Jquery右键菜单插件ContextJS

    **jQuery右键菜单插件ContextJS详解** 在网页开发中,右键菜单通常是增强用户体验的一种常见功能,它能提供快捷的操作选项。`ContextJS`是一个专门为jQuery设计的右键菜单插件,允许开发者轻松地为网页元素添加...

    jquery右键菜单插件

    **jQuery 右键菜单插件详解** 在网页开发中,右键菜单通常用于提供额外的操作选项,例如在图片上右键点击出现“保存图片”或“复制链接地址”等。`jQuery contextmenu` 插件就是这样一个工具,它允许开发者轻松创建...

    jquery右键菜单

    本篇文章将详细讲解如何利用jQuery实现一个右键菜单功能。 一、jQuery概述 jQuery是由John Resig在2006年创建的,它的核心理念是“Write Less, Do More”。通过提供简洁的API,jQuery使得开发者可以快速地操作DOM...

    超实用jQuery右键菜单 可自定义菜单弹出区域

    关于右键菜单,我们介绍得并不多,目前只有介绍过一款jQuery Bootstrap右键菜单 带点击菜单...今天要继续为大家分享一款高大上的jQuery右键菜单,这款右键菜单可以让使用者自定义菜单弹出的区域,因此非常灵活和实用。

    jquery右键菜单123456

    在本实例中,我们关注的是"jquery右键菜单123456",这是一个利用jQuery实现的右键菜单功能。在网页应用中,右键菜单通常用于提供额外的操作选项,比如在网页上进行搜索、复制或保存内容等,这为用户提供了更便捷的...

    JQUERY 右键菜单操作

    **jQuery 右键菜单操作详解** 在Web开发中,为用户提供直观且易用的交互体验是至关重要的。jQuery,作为一款强大的...学习并理解这段代码将有助于你掌握jQuery右键菜单的完整实现流程,从而在实际项目中灵活应用。

    Jquery 右键菜单插件、css样式

    最后,`jquery.contextmenu.js` 可能是一个预封装好的 jQuery 插件,用于简化右键菜单的实现。这样的插件通常提供了一些配置选项,允许开发者定制菜单的内容、样式、行为等。使用插件的好处是减少代码重复,提高代码...

    jQuery右键菜单插件context.js.zip

    《jQuery右键菜单插件context.js的深度解析与应用》 在前端开发中,交互体验是提升用户体验的关键一环,而右键菜单作为常见的交互元素,能够为用户提供便捷的操作选项。jQuery作为一个轻量级的JavaScript库,其丰富...

    jQuery实现右键菜单源码

    本篇文章将深入探讨如何使用jQuery来实现一个右键菜单功能,这在许多交互式网页应用中是非常常见的需求。 首先,理解jQuery的核心概念是至关重要的。jQuery对象通过$()函数创建,它可以用来选择DOM元素、操作DOM、...

    jQuery右键菜单

    jQuery右键菜单是一种常见的网页交互功能,通过JavaScript库jQuery实现,为用户提供了一种在鼠标右键点击时显示自定义操作的便捷方式。这种技术通常被称为上下文菜单(ContextMenu),因为它根据用户当前操作的上...

    Jquery 右键菜单

    而"jQuery 右键菜单"是利用 jQuery 实现的一种用户界面增强功能,允许用户在鼠标右键点击时弹出自定义的上下文菜单,提供更多的操作选项。 创建 jQuery 右键菜单首先需要理解基本的 HTML 结构,通常包括一个用于...

    Jquery右键菜单插件(RightMenu)修正

    Jquery右键菜单插件(RightMenu)修正

Global site tag (gtag.js) - Google Analytics