mootools创建了一个dialog widget
1. var Dialog = new Class({ 2. Implements: Events, 3. initialize: function() { 4. }, 5. show: function() { 6. // .... 7. this.fireEvent('show', this); 8. } 9. }); 10. 11. var dialog = new Dialog(); 12. dialog.addEvent('show', function() { 13. // .... 14. });
-----------------------------------------------------------------------------------
方法一:
if (!window.testClass) { testClass = { data:null, //类的属性 init: function() //类的方法 { this.data=456; alert("init") }, // 注意逗号 show: function() //类的方法 { alert("show:"+this.data) } } } 调用方法: testClass是类名 testClass.init(); testClass.show();
方法二:
////////////////////////////////////////////////////////////////////// //取得 指定元素的 子元素(特定) // //子元素可以指定 name // //子元素可以指定 tagName // //返回集合 (指定name或tagName的子元素集合) // ////////////////////////////////////////////////////////////////////// function Child_class(){ this.list_elment=new Array(); //取得指定元素的所有子元素中元素名为name的元素集合 (有name取name,无name取id ) this.getChildsByName=function(element,name){ var state="name"; return this.getChilds(element,name,state); }; //取得指定元素的所有子元素中tagName为name的元素集合 this.getChildsByTagName=function(element,name){ var state="tagName"; return this.getChilds(element,name,state); }; //state为"name",取得 指定元素的 name为name子元素 //state为"tagName",取得 指定元素的 tagName为name子元素 this.getChilds=function(element,name,state){ this.find(element,name,state); return this.list_elment; //返回集合 }; //通用方法 this.find=function (element,name,state){ if(null==element){return ;} var nodes=element.childNodes; //所有子元素 for(var i=0;i<nodes.length;i++){ if(nodes[i].nodeType==1){ //节点类型为1 var name_id=""; if(state=="name"){ name_id=nodes[i].name==null?nodes[i].id:nodes[i].name; //有name取name,无name取id }else if (state=="tagName"){ name_id=nodes[i].tagName; }else{ alert("请传参数,指定按name或tagName搜索元素!");return ; } if(name_id==name){ this.list_elment.push(nodes[i]); //加入集合 } var bl=nodes[i].hasChildNodes(); //有无下一层子元素 if(bl){ this.find(nodes[i],name,state); //递归 } } } }; } //调用方法如下: //var c=new Child_class(); //var oForm=document.getElementById('oForm'); //var rs=c.getChildsByName(oForm,"m"); //alert(rs.toString());