作者musie (Sirius)
看板Ajax
标题Re: [问题] 关於js的远端载入问题
时间Fri Nov 11 14:24:30 2011
我们是采取动态呼唤js,例如我们要用到fancyBox,但不知道载入了没..
在ready function里面,我们就写
var loader = new Array();
if(typeof $.fancybox == "undefined"){
loader.push($.getScript("/jquery.fancybox-1.3.4.pack.js"));
}
$.when.apply($, loader).done(function(){}).fail(function(){
alert("load Javascript lib error");
});
※ 引述《robinnpca (rob)》之铭言:
: 想请问一下
: 我有两个网页
: 都是同样的外挂js
: 当客户端
: 浏览第一页时 会从远端载入外挂的js
: 比如说1.js 2.js
: 但是在浏览第二页时
: 会重新从远端再次下载一次js吗?
: 还是在用户端的快取里面
: 所以可以马上再次取得!不用向远端在发出请求?
: 这问题的来源是想说
: 到底要不要将
: 『自设功能的js分割开来 另外存成一个档来外挂入html』
: 因为如果每次都要再从远端载入一次的话
: 那就直接写在html的javascript中就好了!(因为每次都是要取的分成两三个档案
: 会更麻烦 虽然本页会变得很肥...)
: 如果可以不用再次向远端取的话
: 那就可以在浏览第一页时就已经下载过一次1.js 2.js
: 那第二页的html就可以只要外挂即可!即可减少不少流量...
: 但不知道原理是哪一种!请教...
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.146.228.192
1F:推 robinnpca:这是查是否动态载入..但我想问的是是否需要『再次』从 11/11 15:08
2F:→ robinnpca:远端载入(之前的js不知会不会存成cookie) 11/11 15:08
3F:→ musie:那我搞错了问题..js也是有暂存,但视同一个文档.. 11/11 15:26
4F:→ musie:放在temp底下,至於要不要再次载入,每个浏览器不同 11/11 15:27
5F:→ musie:检查的方式,但是为了效能通常短时间内同一js不会重抓 11/11 15:28
6F:推 robinnpca:每个浏览器不同欧!那有方法可以检测吗?FF和opera 11/11 16:05
7F:推 herb123456:meta cache-control 是你要的吗? 11/20 04:18