作者osanaosana (OSANA)
看板Ajax
标题[问题] 选择性载入jquery的函式库
时间Thu Aug 4 22:45:36 2011
今天认识到了什麽是CDN...
所以延伸出这个问题
content delivery network (CDN,内容分散式网路)
也就是从别人的网站(Google CDN,CDNJS)
载入一些常用的js工具...
优点是可以减少网站流量,加快使用者读取速度等等
如果我今天只在自己的电脑上开发程式,
可能会关掉网路,这时就只能载入自己电脑里的js工具
或是害怕某天这些工具网站忽然挂掉,那网页就不能动了...
那麽如何写一个选择性载入js工具的程式呢?
逻辑大概是这样
if( Google CDN可以连线 ) // << 这边不知道怎麽写...
{
载入Google CDN的js工具档案;
}
else
{
载入我电脑里的js工具档案;
}
===========================================
这是针对jquery的写法,依据akiratw提供的建议(感谢akiratw),
以及网路上 黑暗执行续 动态载入的写法,
写成的动态载入jquery
<script src="Google API的jquery网址" type="text/javascript"></script>
<script language="javascript">
if( window.jQuery == null)
{
var headID = document.getElementsByTagName("head")[0];
var newJs = document.createElement('script');
newJs .type = 'text/javascript';
newJs .src= "我家的jquery网址";
headID.appendChild(newJs);
}
</script >
其实我比较倾向写一个万用版本,一个长这副德性的函式...
LoadJs("网路版本的工具js","我家的工具js");
有个js工具 ensure 就类似这种功能~~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.228.122.176
1F:推 akiratw:检查 window.jQuery 物件 08/04 22:59
2F:→ akiratw:<script src="//ajax.google.../jquery.min.js"></script> 08/04 23:08
3F:→ akiratw:<script>window.jQuery||document.write(...)</script> 08/04 23:11
※ 编辑: osanaosana 来自: 61.228.122.176 (08/05 01:09)
※ 编辑: osanaosana 来自: 61.228.122.176 (08/05 02:24)