diff --git a/jquery.sketchable.memento.js b/jquery.sketchable.memento.js index 20b94c8..d134460 100644 --- a/jquery.sketchable.memento.js +++ b/jquery.sketchable.memento.js @@ -158,7 +158,6 @@ if (!options.interactive) return opts; var mc = new MementoCanvas(elem); - var callbacks = { init: function(elem, data) { data.memento = mc; @@ -187,11 +186,15 @@ plugin.defaults.events[ev] = callbacks[ev]; } }; - - // Event order matters. - var events = 'init mouseup destroy'.split(" "); - for (var i = 0; i < events.length; i++) { - override(events[i]); + + // Avoid re-attaching the same callbacks more than once. + if (!plugin.isMementoReady) { + // Event order matters. + var events = 'init mouseup destroy'.split(" "); + for (var i = 0; i < events.length; i++) { + override(events[i]); + } + plugin.isMementoReady = true; } // Expose public API for jquery.sketchable plugin. diff --git a/jquery.sketchable.memento.min.js b/jquery.sketchable.memento.min.js index bbf5f4e..fd74865 100644 --- a/jquery.sketchable.memento.min.js +++ b/jquery.sketchable.memento.min.js @@ -1,4 +1,4 @@ /*! * Memento plugin for jQuery sketchable | v1.1 | Luis A. Leiva | MIT license */ -;(function(e){var a=function(m){var h=[];var g=-1;var i=this;function l(){if(g>0){g--;var o=new Image();o.src=h[g].image;o.onload=function(){j(this)}}}function k(){if(g0){g--;var o=new Image();o.src=h[g].image;o.onload=function(){j(this)}}}function k(){if(g