jquery-ui-contextmenu

jQuery plugin that turns a jQueryUI menu widget into a context menu.

Github stars Tracking Chart

jquery.ui-contextmenu

GitHub version
Build Status
Selenium Test Status
npm
jsDelivr,

A jQuery plugin that provides a context menu (based on the standard jQueryUI menu widget).

  • Define menus from <ul> element or definition list (i.e.
    [{title: "Paste", cmd: "paste"}, ...]).
  • Themable using jQuery ThemeRoller.
  • Supports delegation (i.e. can be bound to elements that don't exist at the
    time the context menu is initialized).
  • Optional support for touch devices.

Status

The latest release is available at npm Registry:

$ npm install ui-contextmenu

GitHub version
See also the Change Log.

Demo

Live demo page:
sample

See also the unit tests and live examples

More:

Getting Started

First, include dependencies:

  • jQuery 1.7+ (3.x or later recommended)
  • jQuery UI 1.9+ (at least core, widget, menu), 1.12+ recommended
  • One of the ThemeRoller CSS themes or a custom one
  • jquery.ui-contextmenu.js (also available as CDN on
    ,
    cdnjs, or
    UNPKG)

for example

<head>
    <link href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" rel="stylesheet" />
    <script src="//code.jquery.com/jquery-3.2.1.min.js"></script>
    <script src="//code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>
    <script src="assets/jquery.ui-contextmenu.min.js"></script>

Assume we have some HTML elements that we want to attach a popup menu to:

<div id="container">
    <div class="hasmenu">AAA</div>
    <div class="hasmenu">BBB</div>
    <div class="hasmenu">CCC</div>
</div>

Now we can enable a context menu like so:

$("#container").contextmenu({
	delegate: ".hasmenu",
	menu: [
		{title: "Copy", cmd: "copy", uiIcon: "ui-icon-copy"},
		{title: "----"},
		{title: "More", children: [
			{title: "Sub 1", cmd: "sub1"},
			{title: "Sub 2", cmd: "sub1"}
			]}
		],
	select: function(event, ui) {
		alert("select " + ui.cmd + " on " + ui.target.text());
	}
});

Alternatively we can

initialize the menu from embedded <ul> markup.

For more information:

Credits

Thanks to all contributors.

Browser Status Matrix

Selenium Test Status

Main metrics

Overview
Name With Ownermar10/jquery-ui-contextmenu
Primary LanguageJavaScript
Program languageCoffeeScript (Language Count: 5)
Platform
License:Other
所有者活动
Created At2013-03-09 13:21:40
Pushed At2020-03-14 16:38:01
Last Commit At2020-03-14 17:38:00
Release Count32
Last Release Namev1.18.1 (Posted on 2017-08-28 08:23:56)
First Release Name0.2.0 (Posted on 2013-05-10 16:52:33)
用户参与
Stargazers Count179
Watchers Count21
Fork Count79
Commits Count351
Has Issues Enabled
Issues Count129
Issue Open Count0
Pull Requests Count9
Pull Requests Open Count0
Pull Requests Close Count4
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private