jquery 源码初探,一步步实现自己的jquery(三)
上两篇简单的介绍了jquery的一些知识,也模拟了一下jquery的调用方式,下面我们整点更像的,jquery不是使用#来指定Id吗,我们也来试试,给我们的TestClass类添加一个selector来存储我们要找的目标,并且添加一个val方法来获取值和赋值
改版的TestClass如下:
(function(){ TestClass=function (selector){ return new TestClass.fn.init(selector); } TestClass.fn=TestClass.prototype={ init:function(selector){ this.selector=selector; return this; }, val:function(value){ if(!(this.selector&&this.selector.indexOf("#")==0)){ return ; }var id=this.selector.substring(1); var obj=document.getElementById(id); if(!value){ return obj.value; }else{ obj.value=value; } } } TestClass.fn.init.prototype=TestClass.fn; var $=TestClass; window.$=$; window.TestClass=TestClass; })()alert($("#myinput1").val());$("#myinput1").val("xxxtest");