From 6547f463a75278cfb83d5ee860e8f53b931ee84d Mon Sep 17 00:00:00 2001 From: Florian Schaal <florian@schaal-24.de> Date: Thu, 08 Jan 2015 14:50:58 -0500 Subject: [PATCH] remove db-name from inc-sql --- interface/web/js/jquery.tipsy.js | 17 +++++++++++++++++ 1 files changed, 17 insertions(+), 0 deletions(-) diff --git a/interface/web/js/jquery.tipsy.js b/interface/web/js/jquery.tipsy.js index 9567ed3..f95c063 100644 --- a/interface/web/js/jquery.tipsy.js +++ b/interface/web/js/jquery.tipsy.js @@ -9,6 +9,13 @@ return (typeof thing == 'function') ? (thing.call(ctx)) : thing; }; + function isElementInDOM(ele) { + while (ele = ele.parentNode) { + if (ele == document) return true; + } + return false; + }; + function Tipsy(element, options) { this.$element = $(element); this.options = options; @@ -104,6 +111,7 @@ tip: function() { if (!this.$tip) { this.$tip = $('<div class="tipsy"></div>').html('<div class="tipsy-arrow"></div><div class="tipsy-inner"></div>'); + this.$tip.data('tipsy-pointee', this.$element[0]); } return this.$tip; }, @@ -191,6 +199,15 @@ trigger: 'hover' }; + $.fn.tipsy.revalidate = function() { + $('.tipsy').each(function() { + var pointee = $.data(this, 'tipsy-pointee'); + if (!pointee || !isElementInDOM(pointee)) { + $(this).remove(); + } + }); + }; + // Overwrite this method to provide options on a per-element basis. // For example, you could store the gravity in a 'tipsy-gravity' attribute: // return $.extend({}, options, {gravity: $(ele).attr('tipsy-gravity') || 'n' }); -- Gitblit v1.9.1