From 0e6d4b129b33b6123af57e6304359d7ce10cbcce Mon Sep 17 00:00:00 2001 From: Andrew Davis Date: Mon, 23 Nov 2009 02:11:52 +0000 Subject: [PATCH] grader report MDL-20914 Html tooltips now work in IE on the grader report --- grade/report/grader/grader.js | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/grade/report/grader/grader.js b/grade/report/grader/grader.js index 642ff3b227..97ff14e004 100644 --- a/grade/report/grader/grader.js +++ b/grade/report/grader/grader.js @@ -4,8 +4,14 @@ YAHOO.graderreport.init = function() { // Adjust height of header c0 var rows = YAHOO.util.Dom.getElementsByClassName('heading_name_row'); var header_cell_region = YAHOO.util.Dom.getRegion(); - var height = header_cell_region.bottom - header_cell_region.top; - YAHOO.util.Dom.setStyle('studentheader', 'height', height + 'px'); + if(header_cell_region) + { + var height = header_cell_region.bottom - header_cell_region.top; + if(!isNan(height)) + { + YAHOO.util.Dom.setStyle('studentheader', 'height', height + 'px'); + } + } // attach event listener to the table for mouseover and mouseout var table = document.getElementById('user-grades'); @@ -35,7 +41,6 @@ YAHOO.graderreport.mouseoverHandler = function (e) { // get the element that we just moved the mouse over var elTarget = YAHOO.util.Event.getTarget(e); - // if it was part of the yui panel, we don't want to redraw yet searchString = /fullname|itemname|feedback/; if (elTarget.className.search(searchString) > -1) { @@ -58,7 +63,7 @@ YAHOO.graderreport.mouseoverHandler = function (e) { // popping up on top of the panel. // don't do anything if we have already made the tooltip div - var makeTooltip = true + var makeTooltip = true; for (var k=0; k < elTarget.childNodes.length; k++) { if (typeof(elTarget.childNodes[k].className) != 'undefined') { if (elTarget.childNodes[k].className.search('tooltipDiv') > -1) { @@ -87,10 +92,13 @@ YAHOO.graderreport.mouseoverHandler = function (e) { } } } - //build and show the tooltip - YAHOO.graderreport.panelEl.setBody(tooltipNode.innerHTML); - YAHOO.graderreport.panelEl.render(elTarget); - YAHOO.graderreport.panelEl.show() + //build and show the tooltip (if not empty) + if(tooltipNode.innerHTML) + { + YAHOO.graderreport.panelEl.setBody(tooltipNode.innerHTML); + YAHOO.graderreport.panelEl.render(elTarget); + YAHOO.graderreport.panelEl.show(); + } } }; -- 2.39.5