zoukankan      html  css  js  c++  java
  • jQuery中this与$(this)的区别

    起初以为this和$(this)就是一模子刻出来。但是我在阅读时,和coding时发现,总不是一回事,这里就谈谈this与$(this)的区别。

    AD:

    jQuery中this与$(this)的区别

        $("#textbox").hover(   
              function() {   
                   this.title = "Test";   
              },   
              fucntion() {   
                  this.title = "OK”;   
              }   
        ); 
    

    这里的this其实是一个Html 元素(textbox),textbox有text属性,所以这样写是完全没有什么问题的。
    但是如果将this换成$(this)就不是那回事了,Error--报了。this与$(this)的区别在此。

        Error Code:   
        $("#textbox").hover(   
               function() {   
                  $(this).title = "Test";   
               },   
               function() {   
                  $(this).title = "OK";   
               }   
        ); 
    

    这里的$(this)是一个JQuery对象,而jQuery对象沒有title 属性,因此这样写是错误的。

    JQuery拥有attr()方法可以get/set DOM对象的属性,所以正确的写法应该是这样:

    正确的代码:

        $("#textbox").hover(   
              function() {   
                 $(this).attr(’title’, ‘Test’);   
              },   
              function() {   
                 $(this).attr(’title’, ‘OK’);   
              }   
        ); 
    

    使用jQuery的好处是它包裝了各种浏览器版本对DOM对象的操作,因此统一使用$(this)而不再用this应该是比较不错的选择。

  • 相关阅读:
    Ynoi2016 这是我自己的发明
    Luogu P5268 [SNOI2017]一个简单的询问
    Ynoi2017 由乃的玉米田
    BZOJ4320 [Shanghai2006]Homework
    JOISC2014C 歴史の研究
    莫队
    LOJ6119 「2017 山东二轮集训 Day7」国王
    Luogu P3295 [SCOI2016]萌萌哒
    10.1 进程间通信--消息队列
    9.2 网络协议理论
  • 原文地址:https://www.cnblogs.com/wangxy/p/5018555.html
Copyright © 2011-2022 走看看