User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.101 Safari/537.11 Steps to reproduce: In Firefox 15-17 my Javascript-heavy website worked flawlessly along with all other browsers (regardless of platform). The JS has zero lint errors. I utilize Underscore (1.4.3), Backbone (0.9.9), jQuery (1.8.3), GreenSock (animation library) and Isotope. I get no errors, only strange and inconsistent behavior with Firefox 18. In 17 everything worked as it should. For reference this site even works well in WinXP+IE8. Actual results: See my support post: In 18, sometimes everything works perfectly, then when you refresh the page, nothing will work, upon refresh it will work, but the results are very inconsistent at best. I have tried commenting out large chunks of the site and still see the odd behavior. It is the same in 18 regardless of platform. I have seen it happen on Windows XP, Windows 7 and OSX which leads me to believe it is something in Iron Monkey or the browser itself. Expected results: It should work consistently.
Please, post the URL of your website, or better, a minimal testcase (html file), so we could debug.
The site is not on the production server at the moment (staging only, not publicly accessible). For the minimal test case, I presume I would need to include all js as well? Would a jsbin or something similar work?
Matt: personally, in these cases, I open a github page. This makes it easy to look at both the source code and the result "live". It would be great if you could do so. Otherwise, a jsbin will be quite fine, too.
I did not include the JSON file that populates the data on the site. Should I include a test JSON file?
What we bug triagers need is a simple testcase that can be accessed by us and of course steps to reproduce (what's exactly wrong). We can find the regression range with these information and move the bug to the right component so that a developer can fix it. David: Please tell me how to run that testcase from github without a git client ? A simple attached zip file would be much better IMO.
Created attachment 699967 [details] Reporter's testcase as zip file
The current testcase throws a javascript error in Firefox 18 but also in the current versions of Chrome and Opera (Win7). Here is what firefox says: TypeError: e is undefined @ It seems like it's the same error within the other browsers. I think the testcase doesn't work at all..
From my testing though, it seems as if FF18 skips over large chunks of JS that gets cached whereas 15-17 never did (nor does any other browser).
@Alexander Matt is seriously not the only person having this issue. I have an example site for you. Check out one of RocketThemes templates at ().
@ljohnson: It looks like another issue with FF18, not related to this current bug. Could you file a new bug, please?
.
@ljohnson: With the sentence "I think the testcase doesn't work at all." I only wanted to say that something within the testcase is wrong, not that there is no issue.
(In reply to ljohnson from comment #13) > . Because the cause is different. I filed the bug 829384 for you, you need to update the MooTools version on your side to fix it.
@Alexander Ploner I actually found the fix to my problem. I had to add some additional code to a file in my site. -------------------------------------------------- $doc->addScriptDeclaration(" String.prototype.contains = function(string, separator){ return (separator) ? (separator + this + separator).indexOf(separator + string + separator) > -1 : String(this).indexOf(string) > -1; };"); -------------------------------------------------- Reference1: Reference2: Hope this can be helpful. Peace out peoples. By the way this additional code wasn't needed until after I updated to Firefox 18.
@All Oh yeah, now you can see what my site was supposed to look like. SevereTech.com
(In reply to Matt from comment #9) >. Yes, I think your zipped testcase is broken somewhere because I got only a gray background with the word "loading" displayed during a fraction of sec (in all Firefox versions). When your website is out, repost here so we could test in better conditions.
I am prepping a deployment package today to hand off to my client. Hopefully it will go live today or Monday so I can put the source on Github or my personal server with and without the fix. The thing that boggles my mind is no version of Chrome has an issue, worked on all prior versions of Firefox (regardless of OS), works on iPad, iPhone and all Android, works on IE7, IE8, IE9 and IE10 between XP and Win 7. My fix was simply re-call my initialization functions, as weird as that is (and bad practice...)
@Loic The 'loading' on the landing page is preloading a few images before it fades in the content. I don't think I included any of the imagery in that test case so my apologies for not having that working. As stated above I should have a working live copy available soon.
I've noticed this Bug too happening on an ExtJS 4.1 heavy site. Appearing very randomly so i wasn't able to reproduce yet (on OSX 10.8.2). Colleague of mine noticed the same glitchy* behavior the other day on Win7. Not 100% sure but i didn't see the problem in the FF18 beta which i was using for a couple of weeks to get Retina support. * Things like tool-buttons in panel headers were placed left ontop of title icons instead of right hand side. Or heights were completely garbled. Tab-Panels were completely malfunctioning. 1-3 reloads usually fixes the problem.
Another String#contains regression... Why have we not backed it out, exactly?
Site that functions (with fix) is available at: I had to re-init a handful of functions in order for Firefox 18 to play nicely. In main.js: jdrfApp.Init.Start = function() { jdrfApp.Utils.initIsotope(); // not being re-run jdrfApp.Utils.initIsotopeClicks(); // not being re-run jdrfApp.Views.hoverTheWall(); // not being re-run jdrfApp.Utils.hookupModals(); // not being re-run }; Then I call the jdrfApp.Init.Start(); at the end of the main.js file. I am working on putting up an un-minified version on a personal dev server with the fix removed.
I'm closing this, since there's nothing specific we can track on this bug.