9a7fb2974573b7e57ddac45f2b35c80c66deca53
kate
  Mon Nov 21 11:31:32 2016 -0800
1. Fix Firefox initialization -- it apparently loads SVG faster than Chrome, so need to check before setting event handler.   2. Fix HOME link image (UCSC browser logo), lost during CSS refactoring. refs #17369

diff --git src/hg/js/hgGtexTrackSettings.js src/hg/js/hgGtexTrackSettings.js
index 2c87902..655e622 100644
--- src/hg/js/hgGtexTrackSettings.js
+++ src/hg/js/hgGtexTrackSettings.js
@@ -369,42 +369,48 @@
         var picEl = _svgDoc.getElementById(tis + PIC_LO);
         if (picEl !== null) {
             picEl.addEventListener('mouseenter', onMapEnterTissue);
             picEl.addEventListener('mouseleave', onMapLeaveTissue);
             picEl.addEventListener('mouseup', onMapClickToggleTissue);
         }
     }
 
     function animateTissues() {
         // Add event handlers to tissue table and body map SVG
         $('#setAll').click(onClickSetAll);
         $('#clearAll').click(onClickClearAll);
         tissues.forEach(animateTissue);
     }
 
+    function initSvg(svgEl) {
+        _svgDoc = svgEl.contentDocument;
+        _svgRoot = _svgDoc.documentElement;
+        initBodyMap();
+        animateTissues();
+    }
+
     function init() {
         // cart.setCgi('gtexTrackSettings');
 
         $(function() {
             // After page load, tweak layout and initialize event handlers
-            // TODO: need to wait onready ?
-            var bodyMapSvg = document.getElementById('bodyMapSvg');
-
+            // Check if SVG is loaded, if wait for the event
+            var svgEl = document.getElementById('bodyMapSvg');
+            if (svgEl.getSVGDocument()) {
+                initSvg(svgEl);
+            } else {
                 // Wait for SVG to load
-            bodyMapSvg.addEventListener('load', function() {
-                _svgRoot = bodyMapSvg.contentDocument.documentElement;
-                _svgDoc = bodyMapSvg.contentDocument;
-                
-                initBodyMap();
-                animateTissues();
+                svgEl.addEventListener('load', function() {
+                    initSvg(svgEl);
                 }, false);
+            }
             $('.gbButtonGoContainer').click(submitForm);
         });
     }
 
     return {
             init: init
            };
     
 }()); // gtexTrackSettings
 
 gtexTrackSettings.init();