老师看看这里

来源: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类 ,就有点迷惑 希望老师指导一下



http://img.mukewang.com/climg/5f30ec1b09d0a53604960476.jpg


写回答

1回答

好帮手慕言

2020-08-10

同学你好,解答如下:

1、在同学的代码中,this和$(this)指向的都是zepto对象。另一个老师的回答是针对于其他同学具体的代码解答的,另一段代码和同学这次提供的代码不一样,结果也会不一样。

2、return this 是为了可以链式调用,也就是调用了color方法之后,还可以继续使用其他方法

http://img.mukewang.com/climg/5f30fe5e09686c5e03810110.jpg

如果去掉return this ,也就不能链式调用了。

3、因为this和$(this)指向的都是zepto对象,所以两种写法都是可以实现效果的。

如果我的回答帮到了你,欢迎采纳,祝学习愉快~

0

0 学习 · 6815 问题

查看课程

相似问题