diff --git a/builds/appchan-x.user.js b/builds/appchan-x.user.js index 0e225f9b7..8f427ddd1 100644 --- a/builds/appchan-x.user.js +++ b/builds/appchan-x.user.js @@ -10617,21 +10617,25 @@ }, node: function() { if (this.isClone) { - return $.on($('.menu-button', this.nodes.info), 'click', Menu.toggle); + $.on($('.menu-button', this.nodes.info), 'click', Menu.toggle); + return; } return $.add(this.nodes.info, Menu.makeButton()); }, makeButton: (function() { var frag; - frag = $.nodes([ - $.tn(' '), $.el('a', { - className: 'menu-button brackets-wrap', - innerHTML: '', - href: 'javascript:;' - }) - ]); + frag = null; return function() { var clone; + if (frag == null) { + frag = $.nodes([ + $.tn(' '), $.el('a', { + className: 'menu-button brackets-wrap', + innerHTML: '', + href: 'javascript:;' + }) + ]); + } clone = frag.cloneNode(true); $.on(clone.lastElementChild, 'click', Menu.toggle); return clone; diff --git a/builds/crx/script.js b/builds/crx/script.js index 2af466eea..94811b52b 100644 --- a/builds/crx/script.js +++ b/builds/crx/script.js @@ -10616,21 +10616,25 @@ }, node: function() { if (this.isClone) { - return $.on($('.menu-button', this.nodes.info), 'click', Menu.toggle); + $.on($('.menu-button', this.nodes.info), 'click', Menu.toggle); + return; } return $.add(this.nodes.info, Menu.makeButton()); }, makeButton: (function() { var frag; - frag = $.nodes([ - $.tn(' '), $.el('a', { - className: 'menu-button brackets-wrap', - innerHTML: '', - href: 'javascript:;' - }) - ]); + frag = null; return function() { var clone; + if (frag == null) { + frag = $.nodes([ + $.tn(' '), $.el('a', { + className: 'menu-button brackets-wrap', + innerHTML: '', + href: 'javascript:;' + }) + ]); + } clone = frag.cloneNode(true); $.on(clone.lastElementChild, 'click', Menu.toggle); return clone; diff --git a/src/Menu/Menu.coffee b/src/Menu/Menu.coffee index 01f931b7f..aac85d54a 100644 --- a/src/Menu/Menu.coffee +++ b/src/Menu/Menu.coffee @@ -8,18 +8,22 @@ Menu = cb: @node node: -> - return $.on $('.menu-button', @nodes.info), 'click', Menu.toggle if @isClone + if @isClone + $.on $('.menu-button', @nodes.info), 'click', Menu.toggle + return $.add @nodes.info, Menu.makeButton() makeButton: do -> - frag = $.nodes [ - $.tn(' ') - $.el 'a', - className: 'menu-button brackets-wrap' - innerHTML: '' - href: 'javascript:;' - ] + frag = null -> + unless frag? + frag = $.nodes [ + $.tn(' ') + $.el 'a', + className: 'menu-button brackets-wrap' + innerHTML: '' + href: 'javascript:;' + ] clone = frag.cloneNode true $.on clone.lastElementChild, 'click', Menu.toggle clone