老师看看这里
来源:8-2 zepto插件的写法(二)
慕标5156652
2020-08-10 14:49:23
;(function($){
$.fn.color=function(option){
var options=$.extend({
col:"green",
fz:"36px"
},option);
$(this).css("color",options.col);
this.css("fontSize",options.fz);
console.log(this);
console.log($(this));
return this;
//return $(this);
}
})(Zepto);
$("div").color({
col:"red",
}).addClass("hello");
this和$(this)
1,我看老师在回答其他同学的问题时说的是this是dom对象$(this)是jq对象这里不是很理解我就把它们都打印出来了看不出那个是dom对象和那个是jq对象 还是说我们记住这种写法代表的意思就可以?还有就是我在下面代码中写了这两种方法都有效果 但是我们引进jq文件呀,没引进也起效果吗?
2,代码中return this的作用是什么
3,return this; return $(this);这两种方法都起了效果 都添加了hell类 ,就有点迷惑 希望老师指导一下

1回答
好帮手慕言
2020-08-10
同学你好,解答如下:
1、在同学的代码中,this和$(this)指向的都是zepto对象。另一个老师的回答是针对于其他同学具体的代码解答的,另一段代码和同学这次提供的代码不一样,结果也会不一样。
2、return this 是为了可以链式调用,也就是调用了color方法之后,还可以继续使用其他方法

如果去掉return this ,也就不能链式调用了。
3、因为this和$(this)指向的都是zepto对象,所以两种写法都是可以实现效果的。
如果我的回答帮到了你,欢迎采纳,祝学习愉快~