I've got Firefox 9.0.1 and I've noticed my pages are loading slowly. Exploring with Firebug reveals that the JS files are being requested every time and are waiting on a 304 Not Modified response before letting the page proceed to render. Sometimes this 304 takes a few seconds to arrive (I saw it take 20 seconds once), depending on the speed of the connection, meanwhile the user is sitting there staring at a blank page, stabbing their computer with a spoon.
This occurs very often on viewing a thread, which also loads attachment editor, tiny mce, etc., and thus has a larger number of javascript files to request, increasing the chances of this happening
I understand the merits of having a version number appended to the request, considering that if it ever does change, it would be a troubleshooting headache to leave a notice up to teach people how to hold in shift and reload their browser.
However, the drawback in page load times is frustrating to my users (those to whom it happens, including myself). Does the javascript really change so often as to require the version number query string on every page load?
Is there a way to turn this off in production to prevent browsers from requesting it every time? edit: yep, a couple of them are in page_container_js_head, but removing it from the included JS file script tags requires an edit of library/XenForo/Template/Abstract.php to comment out the foreach that puts it in.
A switch to turn this query string off and on globally would be ideal, as once the javascript does change, it would be handy to force people's browsers to start requesting it again for a brief time.
Alternatively, could it not be appended to the file name of the javascript itself, or used as part of the path name? (js/xenforo/{$xenOptions.jsVersion}/xenforo.js)
This occurs very often on viewing a thread, which also loads attachment editor, tiny mce, etc., and thus has a larger number of javascript files to request, increasing the chances of this happening
I understand the merits of having a version number appended to the request, considering that if it ever does change, it would be a troubleshooting headache to leave a notice up to teach people how to hold in shift and reload their browser.
However, the drawback in page load times is frustrating to my users (those to whom it happens, including myself). Does the javascript really change so often as to require the version number query string on every page load?
Is there a way to turn this off in production to prevent browsers from requesting it every time? edit: yep, a couple of them are in page_container_js_head, but removing it from the included JS file script tags requires an edit of library/XenForo/Template/Abstract.php to comment out the foreach that puts it in.
A switch to turn this query string off and on globally would be ideal, as once the javascript does change, it would be handy to force people's browsers to start requesting it again for a brief time.
Alternatively, could it not be appended to the file name of the javascript itself, or used as part of the path name? (js/xenforo/{$xenOptions.jsVersion}/xenforo.js)