开发者

Efficiency of using php to load scripts?

开发者 https://www.devze.com 2023-03-04 21:00 出处:网络
I have a website that\'s about 10-12 pages strong, using jQuery/Javascript throughout. Since not all scripts are necessary in each and every page, I\'m currently using a switchstatement to output only

I have a website that's about 10-12 pages strong, using jQuery/Javascript throughout. Since not all scripts are necessary in each and every page, I'm currently using a switchstatement to output only the needed JS on any given page, so as to reduce the number of requ开发者_运维问答ests.

My question is, how efficient is that, performance-wise ? If it is not, is there any other way to selectively load only the needed JS on a page ?


This may not be necessary at all.

Bear in mind that if your caching is properly set up, embedding a JavaScript will take time only on first load - every subsequent request will come from the cache.

Unless you have big exceptions (like, a specific page using a huge JS library), I would consider embedding everything at all times, maybe using minification so everything is in one small file.

I don't see any performance issues with the method you are using, though. After all, it's about deciding whether to output a line of code or not. Use whichever method is most readable and maintainable in the long term.


Since you're using JS already, you can use JS solution completely - for example you could use yepnope instead of php. I don't know what's the structure of your website and how you determine which page needs what or at what point is something included (on load, on after some remote thing has finished delivering data), however if you use $.ajax extensively, you could also use yepnope to pull additional JS that's needed once $.ajax is done with what it was supposed to do.


You can safely assume the javascript is properly cached on the clientside.

As I also assume you serve a minified file, seen the size of your website I'd say the performance is neglectable.


It is much better to place ALL your JavaScript in a single separate ".js" file and reference this file in your pages.

The reason is that the browser will cache this file efficiently and it will only be downloaded once per session (or less!).

The only downside is you need to "refresh" a couple of times if you change your script.


So, after tinkering a bit, I decided to give LABjs a try. It does work well, and my code is much less bloated as a result. No noticeable increase in performance given the size of my site, but the code is much, much more maintainable now.

Funny thing is, I had a facebook like button in my header. After analyzing the requests in firebug I decided to remove it, and gained an astounding 2 seconds on the pages loading time. Holy crap is this damn thing inneficient...

Thanks for the answers all !

0

精彩评论

暂无评论...
验证码 换一张
取 消