//js 库代码:
//ZAJ.js库代码
(function (){
//注册命名空间 'AZJ' 到window对象上
window['AZJ'] = {}
//getElementsByClassName包含两个参数:类名,标签名
function getElementsByClassName(className,tag){
//对tag进行过滤,取出所有对象,如取出所有input类型对象。
var allTags=document.getElementsByTagName(tag);
var matchingElements=new Array();
//正则表达式
className = className.replace(/\-/g,"\\-"); // 如果找到-符号,替换成\-便于做正则表达式对象
var strMode = "(^|\\s)" +className+ "(\\s|$)"; // (^|\s)testme\-(\s|$),是开头或者空白字符加上 testme- 加上空白字符或者是结尾
var regex = new RegExp(strMode);
var element;
//将取出的tag对象存入数组中。
for(var i=0;i<allTags.length;i++){
element =allTags[i];
// alert(element.className); // testme-符合正则表达式指定的模式;atllTags.length的长度为3,第三次element.className是空字符串,因为tag相等的都会传进来
if(regex.test(element.className)){ // 测试element.className字符串中是否存在regex对象中存在的字符串,过滤用
matchingElements.push(element);
}
}
return matchingElements;
}
//把创建的函数getElementsByClassName注册到 'window.AZJ'命名空间中 ,可以这样在浏览器中动态的建立对象和方法
window['AZJ']['getElementsByClassName']=getElementsByClassName;
})();
//将上述库代码存放于mylib/testLib.js文件中。
<!-- HTML中的代码 -->
<html>
<title>调用js库测试</title></head>
</html>
参考文章:
http://blog.csdn.net/mazhaojuan/article/details/7659906