You may have a point but I don't have enough knowledge to understand it I just put my arguments here if this question brings up later:hanakin wrote: ↑Thu Sep 14, 2017 11:49 pm because you have no idea the skill level of the individual making the customization and weather they understand the difference between sync/async and the fact that the dom needs to be built before you can interact with it. It is safer to put it in the footer as you do not have to plan for any of this.
- 99% of the browsers (if not 100%) support DOM manipulation before it's ready. Others can be handled with try-catches.
- DOM is NOT READY even if you download jQuery in the end. You still need to use ready() if you are so paranoid about DOM manipulation.
- If the jQuery were downloaded in the <head> it would give new possibilities to extension developers. It should not be a bad thing. It does not make anyone's life harder. If it does make someone's life harder somehow, please give me an example how someone could break his site.
- jQuery is a framework so it should be available as early as possible so that re-inventing the wheel would not be necessary.
- The speed advantage of not loading 35kB file in the <head> is neglible and it affects only random first time users.
- With jQuery in the <head> we could give a returning user better user experience if we wanted.