目前做的主题,含有大量的js,以前是全部压缩到2个文件里的,两个文件都很大,在现代浏览器中运行毫无压力。但是,对于残疾的ie来说,那简直就是受罪。会随机出现以下状况:
1、js加载无任何错误,但就是没有特效。
2、js加载总是失败。
3、js加载过慢,导致用户失去耐心。
4、js加载过多,导致浏览器性能下降不少。
目前这款主题,是越做越杂了,超过了当时简洁的想法,几乎涵盖了所有能想到的内容。所以,在对待所有浏览器相同的待遇时,ie的表现让人蛋疼不已。所以有了以下几个方法:
1、屏蔽ie的部分特效。
2、异步加载js文件,用到该文件再加载,并且不重复加载。
目前已修改完毕,等待测试。
当然,这里主要讲的就是getScript方法,这个方法是$.ajax的高级方法,就像$.post,$.get一样是封装好的ajax特殊用法。getScript可以这么用:
http://www.w3school.com.cn/jquery/ajax_getscript.asp
这里是个简单的用法,在加载脚本的时候,脚本是不会缓存在客户端的,因为每次异步加载的时候会带上一个时间戳的。
1、getScript方法介绍
Load a JavaScript file from the server using a GET HTTP request, then execute it.
——官方如是说
有两个特征,一是能够使用get的http请求服务器资源下载到本地,二是能够在加载完毕之后并执行这个脚本。它的深层次的写法是这样的:
2、getScript优点
正如她的特点一样,优点很明显,那就是异步请求,在页面快速载入1KB的基本js之后,然后分段依次载入100KB的脚本,当然这是假设情况。我们熟悉的QQ空间就是利用这样的原理,一步一步的部署运行环境的,能够减少客户端的压力,并且页面的呈现不会因为js庞大而戛然而止或者止步不前。
3、getScript缺点
他的缺点就是加重了客户端对服务器的请求次数。缺点相比优点来说,似乎可以忽略。