Last modified: 2013-05-23 09:05:04 UTC
Prior to 1.8 SRF_jqPlotBar.js and SRF_PlotPie.js sent a conditional load request to load excanvas.js. The merged functionality of jqplot no longer loads excanvas.js. IE7 fails with a null object call to the canvas function. In theory the new jqplot functionality can only be rendered on IE9 and above (not tested)
This has been eliminated because loading an additional library that tries to emulate functionality that is not natively supported by a browser has all sorts of draw backs but if you really need to support IE7, you can try something like: var p = $.client.profile(); if ( p.name === 'msie' && p.versionNumber < 9 ) { mw.loader.using( 'ext.jquery.jqplot.excanvas', fn() ); } else { fn(); } For an example how excanvas can be loaded conditionally, see ext.srf.tagcloud.sphere.js (but since the excanvas has a major performance drawback this will be deleted in SRF 1.9 as well).
I think its important that the SRF release notes make it clear that you are dropping support for IE7 and IE8 with this version. I am happy to take major performance hits rendering graphs on IE7, versus IE9/10, as it adds weight to migration. Some may take the view that this version of SRF should not be used until they no longer have IE7 in there environment.
(In reply to comment #2) > I think its important that the SRF release notes make it clear that you are > dropping support for IE7 and IE8 with this version. It is an open source project, anyone is invited to improve documentation and/or its available features. > I am happy to take major performance hits rendering graphs on IE7, versus > IE9/10, as it adds weight to migration. While it may be that some entities (companies or users) are happy to take those risks, putting volunteer developers under scrutiny to foster a technological environment that limits SMW/SRF's evolvement, especially after the fact that IE7/8 usage [1] is below 1% (depending on the source cited) is surely difficult. > Some may take the view that this version of SRF should not be used until they > no longer have IE7 in there environment. Comment 1 shows on how to adopt to an environment where excanvas support is still required. [1] http://www.w3schools.com/browsers/browsers_explorer.asp
As we are currently an IE7 shop, but will be IE9 in a few months time, and when we change the roll out will be quick. I took the following action. I edited Resource.php to load excanvas.js as part of the plot core module set. While I understand this will impact IE9 users during the change over it appears to be less invasive that putting the conditional code in all the areas it needs to be.