From 0d0127aa8e0685722d28c12db4003e89dbea6693 Mon Sep 17 00:00:00 2001 From: louisameline Date: Sun, 12 Feb 2017 12:19:37 +0100 Subject: [PATCH] use window.document.body instead of --- src/js/tooltipster.js | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/src/js/tooltipster.js b/src/js/tooltipster.js index 4440879..198f8e3 100644 --- a/src/js/tooltipster.js +++ b/src/js/tooltipster.js @@ -17,9 +17,9 @@ var defaults = { IEmin: 6, interactive: false, multiple: false, - // must be 'body' for now, or an element positioned at (0, 0) + // must be 'body' for now (default), or an element positioned at (0, 0) // in the document, typically like the very top views of an app. - parent: 'body', + parent: null, plugins: ['sideTip'], repositionOnScroll: false, restoration: 'none', @@ -546,7 +546,7 @@ $.Tooltipster.prototype = { // to detect swiping if (env.hasTouchCapability) { - $('body').on('touchmove.'+ self.__namespace +'-triggerOpen', function(event) { + $(env.window.document.body).on('touchmove.'+ self.__namespace +'-triggerOpen', function(event) { self._touchRecordEvent(event); }); } @@ -941,7 +941,10 @@ $.Tooltipster.prototype = { } // determine the future parent - if (typeof this.__options.parent == 'string') { + if (this.__options.parent === null) { + this.__options.parent = $(env.window.document.body); + } + else if (typeof this.__options.parent == 'string') { this.__options.parent = $(this.__options.parent); } @@ -1519,7 +1522,7 @@ $.Tooltipster.prototype = { // clear the array to prevent memory leaks self.__$originParents = null; - $('body').off('.'+ self.__namespace +'-triggerClose'); + $(env.window.document.body).off('.'+ self.__namespace +'-triggerClose'); self._$origin.off('.'+ self.__namespace +'-triggerClose'); @@ -1971,7 +1974,7 @@ $.Tooltipster.prototype = { eventNames += 'touchend.'+ self.__namespace +'-triggerClose'; } - $('body').on(eventNames, function(event) { + $(env.window.document.body).on(eventNames, function(event) { if (self._touchIsMeaningfulEvent(event)) { @@ -1986,7 +1989,7 @@ $.Tooltipster.prototype = { // needed to detect and ignore swiping if (self.__options.triggerClose.tap && env.hasTouchCapability) { - $('body').on('touchstart.'+ self.__namespace +'-triggerClose', function(event) { + $(env.window.document.body).on('touchstart.'+ self.__namespace +'-triggerClose', function(event) { self._touchRecordEvent(event); }); } @@ -2485,7 +2488,7 @@ $.Tooltipster.prototype = { .off('.'+ self.__namespace +'-triggerOpen'); // remove the touch listener - $('body').off('.' + self.__namespace +'-triggerOpen'); + $(env.window.document.body).off('.' + self.__namespace +'-triggerOpen'); var ns = self._$origin.data('tooltipster-ns'); @@ -3070,7 +3073,7 @@ Ruler.prototype = { this.$container = $('
') .append(this.__$tooltip) - .appendTo('body'); + .appendTo(env.window.document.body); }, /**