JS/CSS module LazyLoad 之二

上一篇完成的JS的按需加载,这篇添加个新方法css,完成对CSS文件的加载。接口与JS相同,示例如下

LazyLoad.css(['a.css', 'b.css', 'c.css'], function(){
	console.log('css模块加载完毕');
});

 

Firebug中效果如下,

JS/CSS module LazyLoad 之二_第1张图片

 

上一篇对JS的加载实现是通过script元素,css则是通过link元素。而link元素仅IE6/7/8/9和Opera中支持其onreadystatechange事件,Firefox/Safari/Chrome既不支持onreadystatechange,也不支持onload。这里取了一个巧使用setTimeout延迟加载。

 

HTML如下

<!DOCTYPE HTML>
<html>
	<head>
		<meta charset="utf-8">
		<title>LazyLoad_0.2.js</title>
		<script src="http://files.cnblogs.com/snandy/LazyLoad_0.2.js"></script>
		<script type="text/javascript">
			var ary = [
				'http://files.cnblogs.com/snandy/a.css',
				'http://files.cnblogs.com/snandy/b.css',
				'http://files.cnblogs.com/snandy/c.css'
			];
			function start(){
				LazyLoad.css(ary, function(){
				});
			}
		</script>
	</head>
	<body>
	<button onclick="start()">Start loading</button>
	</body>
</html>
 

 

页面初始时字体颜色,背景色等都是默认的。点击按钮“Start loading”后会载入a,b,c三个css文件。此时字体颜色变成红色,背景色为黄色。文字也居中了。

 

 

 

你可能感兴趣的:(lazyload)