Skip to content

Commit 784622a

Browse files
committed
Add appendTo option
1 parent 0648d53 commit 784622a

File tree

2 files changed

+10
-6
lines changed

2 files changed

+10
-6
lines changed

CHANGELOG.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
# 1.18.2 / Unreleased
1+
# 1.19.0 / Unreleased
2+
- Add `appendTo` option.
23

34
# 1.18.1 / 2017-08-28
45

jquery.ui-contextmenu.js

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ $.widget("moogle.contextmenu", {
3535
options: {
3636
addClass: "ui-contextmenu", // Add this class to the outer <ul>
3737
closeOnWindowBlur: true, // Close menu when window loses focus
38+
appendTo: "body", // Set keyboard focus to first entry on open
3839
autoFocus: false, // Set keyboard focus to first entry on open
3940
autoTrigger: true, // open menu on browser's `contextmenu` event
4041
delegate: null, // selector
@@ -143,7 +144,7 @@ $.widget("moogle.contextmenu", {
143144
} else if (this.$menu) {
144145
this.$menu
145146
.menu("destroy")
146-
.removeClass(this.options.addClass)
147+
.removeClass(opts.addClass)
147148
.hide();
148149
}
149150
this.$menu = null;
@@ -153,7 +154,7 @@ $.widget("moogle.contextmenu", {
153154
if ( !menuDef ) {
154155
return;
155156
} else if ($.isArray(menuDef)) {
156-
this.$menu = $.moogle.contextmenu.createMenuMarkup(menuDef);
157+
this.$menu = $.moogle.contextmenu.createMenuMarkup(menuDef, null, opts);
157158
this.menuIsTemp = true;
158159
}else if ( typeof menuDef === "string" ) {
159160
this.$menu = $(menuDef);
@@ -579,10 +580,12 @@ $.extend($.moogle.contextmenu, {
579580
}
580581
},
581582
/** Convert a nested array of command objects into a <ul> structure. */
582-
createMenuMarkup: function(options, $parentUl) {
583-
var i, menu, $ul, $li;
583+
createMenuMarkup: function(options, $parentUl, opts) {
584+
var i, menu, $ul, $li,
585+
appendTo = (opts && opts.appendTo) ? opts.appendTo : "body";
586+
584587
if ( $parentUl == null ) {
585-
$parentUl = $("<ul class='ui-helper-hidden' />").appendTo("body");
588+
$parentUl = $("<ul class='ui-helper-hidden' />").appendTo(appendTo);
586589
}
587590
for (i = 0; i < options.length; i++) {
588591
menu = options[i];

0 commit comments

Comments
 (0)