FusionCharts' JavaScript file makes use of innerHTML to replace a placeholder <div>'s content with the generated SWF. However, on IE6, this causes an "Unknown runtime error".
I am working with version 1.2.4. I have jQuery 1.3 loaded on the site, so I replaced four instances of innerHTML calls with $().html() syntax:
Line 237:
{ n.innerHTML = obj.getSWFHTML(); },false );
became
{ $(n).html(obj.getSWFHTML()); }, false);
Line 242:
{ n.innerHTML = obj.getSWFHTML(); } );
became
{ $(n).html(obj.getSWFHTML()); });
Line 246:
n.innerHTML = this.getSWFHTML();
became
$(n).html(this.getSWFHTML());
Line 251:
n.innerHTML = this.getSWFHTML();
became
$(n).html(this.getSWFHTML());
Showing posts with label jQuery. Show all posts
Showing posts with label jQuery. Show all posts
Tuesday, August 25, 2009
Saturday, July 25, 2009
jQuery execution after image load
If you need to run JavaScript that's based on some attribute of a loaded image (e.g. height or width), use a callback with $(window).load() instead of $(document).ready().
Monday, October 27, 2008
Using jQuery to make LI elements hover-able in IE6
Another necessary hack, this time to overcome IE6's non-support of the hover pseudo-class for LI elements.
This is to be used in situations where navigation is structured using UL, LI, and A elements and styled via CSS. Please note that additional selectors will be required when implementing this solution: the standard selector (using li:hover notation) and the alternate selector (using li.over notation to support what this JavaScript is accomplishing):
This is to be used in situations where navigation is structured using UL, LI, and A elements and styled via CSS. Please note that additional selectors will be required when implementing this solution: the standard selector (using li:hover notation) and the alternate selector (using li.over notation to support what this JavaScript is accomplishing):
$(document).ready(function() {
// Hack to make li's 'hover-able'
if (document.all && document.getElementById) {
$("#mainnav > .menu ul > li").each(function() {
this.onmouseover = function() { this.className += " over"; }
this.onmouseout = function() { this.className = this.className.replace(" over", ""); }
});
}
});
Subscribe to:
Posts (Atom)