faheem801 / flot

Automatically exported from code.google.com/p/flot
MIT License
0 stars 0 forks source link

flot breaks in IE9 #408

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Float breaks in Internet Explorer 9 on line 539 and 553:

if ($.browser.msie) // excanvas hack

worked if I changed it to:

if ($.browser.msie && parseFloat($.browser.version) < 9) // excanvas hack

/Frank
Thx for a great plugin

Original issue reported on code.google.com by frank%ou...@gtempaccount.com on 31 Aug 2010 at 12:43

GoogleCodeExporter commented 9 years ago
Why not check for feature support instead of relying on browser sniffing?

var test_canvas = document.createElement("canvas") //try and create sample 
canvas element 
var canvascheck=(test_canvas.getContext)? true : false //check if object 
supports getContext() method, a method of the canvas element 

reference: http://www.javascriptkit.com/javatutors/createelementcheck.shtml

Original comment by jongallo...@gmail.com on 20 Sep 2010 at 5:12

GoogleCodeExporter commented 9 years ago
Or, better yet, maybe use http://www.modernizr.com/ to detect support?

Original comment by jongallo...@gmail.com on 20 Sep 2010 at 5:17

GoogleCodeExporter commented 9 years ago
Never mind - I see that this has been fixed in the trunk since r233. Solution - 
get latest code.

Original comment by jongallo...@gmail.com on 23 Sep 2010 at 10:01

GoogleCodeExporter commented 9 years ago
No, its NOT fixed.

I can confirm that flot does not work properly, even with the latest svn 
version of flot and excanvas in IE9. It appears IE 9 will render flot graphs 
correctly in any browser mode, but only in Quirks mode or IE8 Standards 
Document mode.

Browser Mode      Document Mode      Works? Y/N
-----------------------------------------------
IE7               Quirks Mode        Y
IE7               IE7 Standards      N *
IE7               IE8 Standards      Y
IE7               IE9 Standards      N *

IE8               Quirks Mode        Y
IE8               IE7 Standards      N *
IE8               IE8 Standards      Y
IE8               IE9 Standards      N *

IE9               Quirks Mode        Y
IE9               IE7 Standards      N *
IE9               IE8 Standards      Y
IE9               IE9 Standards      N *

Original comment by alex.ven...@gmail.com on 26 Oct 2010 at 8:16

GoogleCodeExporter commented 9 years ago
Is anyone from the flot team able to confirm if Flot supports IE9

Original comment by davidall...@gmail.com on 11 Nov 2010 at 6:02

GoogleCodeExporter commented 9 years ago
I solved the problem. See: http://code.google.com/p/flot/issues/detail?id=441

Original comment by evgeny.p...@gmail.com on 1 Dec 2010 at 12:35

GoogleCodeExporter commented 9 years ago
Issue 427 has been merged into this issue.

Original comment by olau%iol...@gtempaccount.com on 13 Dec 2010 at 6:21

GoogleCodeExporter commented 9 years ago
Issue 441 has been merged into this issue.

Original comment by olau%iol...@gtempaccount.com on 13 Dec 2010 at 6:22

GoogleCodeExporter commented 9 years ago
I don't have an IE9 nearby, but as remarked by jongalloway, Flot has already 
been changed to test for the existence of Excanvas and only init it in case 
it's defined. Now, with the excanvas.js in Flot trunk, it should only be 
defined in case there's no canvas implementation:

if (!document.createElement('canvas').getContext) {

This should work, I guess? Would somebody mind trying with this excanvas (be 
careful when trying it out, it's easy to mix up the old and new 
minified/unminified versions)?

Another way of fixing this is changing the include comment voodoo to only test 
for IE <= 8. I think we should do this regardless, there's no good reason to 
have IE9 users download excanvas.

Original comment by olau%iol...@gtempaccount.com on 13 Dec 2010 at 6:34

GoogleCodeExporter commented 9 years ago
I've suggested a fix here: 
http://meta.stackoverflow.com/questions/70930/reputation-graph-doesnt-work-in-ie
-9

As for the one proposed by Issue 441, I'd really recommend to do 
feature-testing instead of hardcoding browser versions wherever possible.

Original comment by hypft...@googlemail.com on 12 Jan 2011 at 10:59

GoogleCodeExporter commented 9 years ago
Ye, browser version check through jQuery.browser object is not a good practice. 
But the developer uses it in the code, so I simply kept fix according to the 
existing coding style.

Original comment by evgeny.p...@gmail.com on 12 Jan 2011 at 12:33

GoogleCodeExporter commented 9 years ago
Ole, I can confirm that the trunk version doesn't have any issues with this due 
to the canvas checking.  

The conditional comment you'd want is this:

[if lte IE 8]

Original comment by ryl...@gmail.com on 20 Jan 2011 at 6:11

GoogleCodeExporter commented 9 years ago
Ryley: Great! I've commit your fix. Thanks!

I'm closing this bug now. If anyone still has a problem, please first make sure 
you're running the development version of Flot and the excanvas before you post.

Original comment by olau%iol...@gtempaccount.com on 26 Jan 2011 at 3:11