According to http://caniuse.com/script-defer, most browsers support the script tag’s defer attribute.
I would like to know if scripts specified by <script defer src="..."> get executed before or after jQuery’s $(document).ready()? Are the major, modern browsers (Chrome, Firefox, IE, etc.) consistent in the order of execution or does it vary?
Based on this
fiddleI have to say jQuery’s$(document).ready()executes after a script declared withdefer. I tested it with Firefox and Chrome, and both had the same behavior independently of the sequence of the scripts.I guess behavior on other browsers might change based on their implementation, so it’s always uncertain.
EDIT: As it turns out, the
deferattribute should be used with an external javascript file. I edited the fiddle to show this, apparently with the same results.Updated fiddle here: http://jsfiddle.net/RNEZH/15/