2
votes

I just upgraded to IE9 to do cross browser compatibility testing of my site, which uses Raphael.js. I know my site and its Raphael.js graphics work in IE8 proper using VML, but for some reason, when I set IE9 to have IE8 Browser Mode/Document Mode, Raphael.js tries to use SVG instead of VML. This doesn't happen when I set IE9 to IE7 Browser Mode/Document Mode; that is, Rapahel.js uses VML. Why does IE9 think that IE8 supported SVG?

1
The problem seems to be that win.SVGAngle is defined in IE9's IE8 mode, but isn't in normal IE8. - Aaron Gibralter
This doesn't appear to reproduce in the latest internal build. Is there a URL I could try? - EricLaw
I don't have a URL with that anymore, but the line of code from Raphael.js is here: github.com/DmitryBaranovskiy/raphael/blob/master/raphael.js#L92 - window.SVGAngle was defined for me in IE9's IE8 mode... I'm not on my PC right now so I can't tell you which version I have... but I can check on Monday. - Aaron Gibralter
IE9 RC improved other discrepancies between IE8 and IE9-in-IE8-mode. Does this issue persist as of February’s IE9 Release Candidate? - Alan H.

1 Answers

0
votes

I know nothing about Raphaël, but I do know that IE9 reports its JScript Version incorrectly. No matter what version you have Browser Mode/Document Mode set to, @_jscript_version returns 9. If Raphaël decides whether to use VML or SVG based on @_jscript_version, it could cause trouble.