From 12ff6db22f4974f1bf3d4444adc9201564e64693 Mon Sep 17 00:00:00 2001 From: Austin Date: Thu, 17 Dec 2015 14:38:00 -0500 Subject: [PATCH 1/2] Fixing tooltip behavior for layer view Adding function to check position of rendered tooltip relative to position of the bottom of the browser. If it would render offscreen we bump it up to above the layer name rather than below. --- assets/main.js | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/assets/main.js b/assets/main.js index 4662ceb..fbd295e 100644 --- a/assets/main.js +++ b/assets/main.js @@ -771,7 +771,11 @@ function addPopupActionsToLayersControlLayerTitles(data_obj, map_params) { var selector = 'div#' + slug + '-description-tooltip.layer-description-tooltip'; //var layerControlLabelSelector = 'label#' + slug + "-layer-control-label"; //console.log("Showing: " + selector); - $(selector).show(); + $(selector).show(1, function() { + if (!$(selector).data('height-adjusted')) { + adjustLayerTooltipDisplay($(selector)); + } + }); //console.log("Label: " + $(layerControlLabelSelector)[0].outerHTML + "\n" // + " | CSS top: " + $(layerControlLabelSelector).css("top") // + " | $().offset().top: " + $(layerControlLabelSelector).offset().top @@ -803,6 +807,23 @@ function createDescriptionTooltip(dataset, p) { return tooltip; } +function adjustLayerTooltipDisplay(el) { + if (tooltipIsNearTheBottomEdge(el)) { + el.css('top', (-el.height() - parseInt(el.css('top'))) + 'px'); + console.log(el.css('top')); + el.data('height-adjusted', true); + } +} + +function tooltipIsNearTheBottomEdge(el) { + var w_height = $(window).height(); + var el_offset = el.offset(); + if (el_offset.top + el.height() > w_height) { + return true; + } + return false; +} + /******************************** * Layer management functions */ From 350bab37fc6b56adb168ab1a96d7c8e9b248a818 Mon Sep 17 00:00:00 2001 From: Austin Date: Wed, 6 Jan 2016 11:33:33 -0500 Subject: [PATCH 2/2] Removing debug code --- assets/main.js | 1 - 1 file changed, 1 deletion(-) diff --git a/assets/main.js b/assets/main.js index fbd295e..8941494 100644 --- a/assets/main.js +++ b/assets/main.js @@ -810,7 +810,6 @@ function createDescriptionTooltip(dataset, p) { function adjustLayerTooltipDisplay(el) { if (tooltipIsNearTheBottomEdge(el)) { el.css('top', (-el.height() - parseInt(el.css('top'))) + 'px'); - console.log(el.css('top')); el.data('height-adjusted', true); } }