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

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

Firebug中效果如下,

JS/CSS module LazyLoad 之二


上一篇对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="https://files.cnblogs.com/snandy/LazyLoad_0.2.js"></script>
		<script type="text/javascript">
			var ary = [
				'https://files.cnblogs.com/snandy/a.css',
				'https://files.cnblogs.com/snandy/b.css',
				'https://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文件。此时字体颜色变成红色,背景色为黄色。文字也居中了。


example下载

相关文章:

  • 2021-11-15
  • 2022-12-23
  • 2021-04-29
  • 2022-12-23
  • 2022-01-09
  • 2021-12-06
猜你喜欢
  • 2021-12-30
  • 2021-06-04
  • 2022-02-17
  • 2021-08-28
  • 2021-11-25
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案