From 43a76e57c9e3d8c53603ef0956b80e9dfcb24931 Mon Sep 17 00:00:00 2001 From: Gleb Mazovetskiy Date: Sat, 12 Jul 2014 16:44:16 +0200 Subject: rake convert --- assets/javascripts/bootstrap/tooltip.js | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'assets/javascripts/bootstrap/tooltip.js') diff --git a/assets/javascripts/bootstrap/tooltip.js b/assets/javascripts/bootstrap/tooltip.js index 9cdb6c9..0c3a79d 100644 --- a/assets/javascripts/bootstrap/tooltip.js +++ b/assets/javascripts/bootstrap/tooltip.js @@ -316,13 +316,20 @@ Tooltip.prototype.getPosition = function ($element) { $element = $element || this.$element + var el = $element[0] var isBody = el.tagName == 'BODY' - return $.extend({}, (typeof el.getBoundingClientRect == 'function') ? el.getBoundingClientRect() : null, { - scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop(), + var isSvg = window.SVGElement && el instanceof window.SVGElement + + var elRect = el.getBoundingClientRect ? el.getBoundingClientRect() : null + var elOffset = isBody ? { top: 0, left: 0 } : $element.offset() + var scroll = { scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop() } + var outerDims = isSvg ? {} : { width: isBody ? $(window).width() : $element.outerWidth(), height: isBody ? $(window).height() : $element.outerHeight() - }, isBody ? { top: 0, left: 0 } : $element.offset()) + } + + return $.extend({}, elRect, scroll, outerDims, elOffset) } Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) { -- cgit v1.2.3