如何用javascript实现像JQ那种$().bind()的写法?
下面的代码倒是可以id(a,b).ad(....)这样子用,但是不能单独使用id(d,f)来返回对象了.varid=function(d,f){varc="id";ret...
下面的代码倒是可以id(a,b).ad(....)这样子用,但是不能单独使用id(d,f)来返回对象了.
var id = function(d,f) {
var c="id";
return {ad:function(a,b,c){
ad(d,f,c,a, b, c);
}};
}
请高手帮忙给段实现代码,要简单明了,别是一大段又一大段的让人分不清东南西北就好,谢谢. 展开
var id = function(d,f) {
var c="id";
return {ad:function(a,b,c){
ad(d,f,c,a, b, c);
}};
}
请高手帮忙给段实现代码,要简单明了,别是一大段又一大段的让人分不清东南西北就好,谢谢. 展开
4个回答
2014-05-26
展开全部
var $ = function (a){
return new $$(a);
}
var $$ = function(s){
this.ele = s;
this.ori = s;
}
$$.prototype = {
jia: function(a){
this.ele += a;
return this;
},
jian: function(b){
this.ele -= b;
return this;
},
cheng: function(c){
this.ele = this.ele * c;
return this;
},
chu: function(d){
this.ele = this.ele / d;
return this;
},
result: function(){
alert(this.ele);
return this;
}
}
$(6).jia(7).jian(10).cheng(5).chu(3).result();
//大体思路就是这样,通过包装对象+原型实现链式调用
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
想要实现链式调用,只需要在函数最后返回this即可
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
追问
看了你的代码给我收获很大,谢谢.问题也解决了一大半,还有一小半请指教一下.就是
Dojo.dom("#a").bind("click",fn),可以用,但$dom("#a")不能直接返回#a对象?这个如何是好呢?
追答
返回这个对象的话比较简单,我后续完善下
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
var $=function(e){return document.querySelector(e)};
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询