模块化开发的好处:
1:减少冲突
2:提高性能
用sea.js为例:sea.js模块库下载地址:http://seajs.org/docs/#downloads
例子:获取非行间样式的模块化开发:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> <script type="text/javascript" src="sea_js/sea.js" ></script> <script> /* 一:引入sea.js文件 二:定义模块 三:引用模块 四:模块依赖 */ //页面调用模块中的类库 window.onload=function(){ var oDiv=document.getElementById("div1"); /* 页面调用模块中的类库 1:seajs.use(first-argument,second-argument) first-argument:模块文件的地址 second-argument:回调函数,回调函数的参数是模文件的对外接口exports */ seajs.use(‘./sea_js/getStyle.js‘,function(ex){ alert(ex.getStyle(oDiv,‘width‘)); }) } </script> <style> #div1{width:200px;height:200px;background:red;} </style> </head> <body> <div id="div1"></div> </body> </html>
获取非行间样式模块文件getStyle.js:
// JavaScript Document //定义一个获取非行间样式的函数模块 define(function(require,exports,module){ /* require:模块文件依赖接口 exports:对外文件接口 module: 三个都要写就可以了 */ function getStyle(obj,attr){ if(obj.currentStyle){ return obj.currentStyle[attr]; } else{ return getComputedStyle(obj,false)[attr];//非ie下 } } //exports:对外的接口,用于调用模块 exports.getStyle=getStyle;//好像对象中的方法调用. });
结果获得是:200px;
JS中的模块化开发之Sea.JS,布布扣,bubuko.com
时间: 2024-10-13 19:30:29