为了账号安全,请及时绑定邮箱和手机立即绑定

为什么这个jQuery需要$.cgbColor($(this))这样显示?

请看下面我做的代码:

 <body>
        <h3>我最喜爱的水果</h3>
        <ul id="ultest">
            <li>啤梨</li>
            <li>菠萝</li>
            <li>释迦</li>
            <li>草莓</li>
        </ul>
        <script type="text/javascript">
            (function($){
                $.extend({
                      "cgbColor": function(li){
                          $(li).css("background","red");
                          } ,
                      "cgbColor1": function(li){
                          $(li).css("background","#fff");
                          }  
                        
                    });
                })(jQuery);
            $(function(){
                       $("li").bind("mouseover",function(){
                           $.cgbColor($(this));
                           });
                       $("li").bind("mouseout",function(){
                           $.cgbColor1($(this));   
                           });
                });
        </script>
    </body>


这个我跟某同学的思路一样,但是$.cgbColor($(this))这个地方我是看了某同学的代码才写的出来的,但是我个人不太理解为什么方法后面是写的$(this),能否解释一下?

正在回答

1 回答

$(this)代表获取当前元素,这里要做的就是将当前被触发事件的元素的背景改变一下。

1 回复 有任何疑惑可以回复我~
#1

kelvinwong 提问者

解释得很清晰,谢谢了!
2016-03-21 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
jQuery基础课程
  • 参与学习       154768    人
  • 解答问题       7184    个

加入课程学习,有效提高前端开发速度

进入课程

为什么这个jQuery需要$.cgbColor($(this))这样显示?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信