views:

48

answers:

0

The title, I'm sure, is gonna provoke a "here we go again..." with many readers. Apologies. I have googled this problem and got the phone book. Mostly re SSL, it must be said. Others point to the terrible JS engine in IE. None of the internet rants I found have really answered this satisfactorily for me. So I thought I post here...

I am building a web app, mostly develop in FF (coz of Firebug), test in Opera, Chrome, Safari and ... IE. Lots of jQuery, lots of ajax. Web server is Apache on Win XP. Browser response is usually blazingly fast (the web server's on the LAN and does nothing else), except for IE, which is EXCRUCIATINGLY slow.

My code is generally structured along these lines:

module1= function() {
    // JS code backing html in div1
};

$div1.load("div1.html",function() {
    module1();
});

That is, the JS code for module1 is known to the browser from the word "go", though I would expect that compilation of this code is deferred in all browsers until I actually call the module1() closure, which only follows on a successful load(). I can therefore readily believe that a slow JS engine, as may be present in IE, will present a drag (to displaying div1). However...

What I notice is that while IE6 goes about late-loading my html snippets and all attendant components (images, mostly), when I pull up another browser (to pass the time) and load my site, that browser will hang. Until such time as IE finishes downloading. That is, IE completely clobbers my Apache server for everyone else.

This makes me think that this is not, primarily, a slow-JS interpretation problem. That in fact there might be some hand-shake problems between Apache and IE. I have no evidence of this in Apache's logs, hence I thought I ask.

Does anyone have any ideas? Is there a (known) configuration issue on Apache?

PS: I might add that during these protracted late-loading efforts, IE's status bar - which is, I believe, an unreliable progress indicator - quite often shows urls to my icons (ie very small .gif and .png files).