溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

jquery改變this指向的方法

發(fā)布時(shí)間:2020-11-19 10:20:44 來源:億速云 閱讀:341 作者:小新 欄目:web開發(fā)

這篇文章主要介紹了jquery改變this指向的方法,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

jquery改變this指向的方法:1、利用賦值【var that=this;】來改變嵌套函數(shù)的【this】指向;2、利用es6箭頭函數(shù)改變this指向,代碼為【$('div').on('click', function()】。

jquery改變this指向的方法:

利用賦值var that=this; 來改變嵌套函數(shù)的 'this' 指向

利用es6箭頭函數(shù) 改變this指向

    <script>
      function show() {
       alert(this)
      }
    //   show() //-> window
      //   show.call(document) // ->document  | 原生的方法
     $.proxy(show, document)() // ->document  | jQuery方法
  </script>

tips: 對(duì)于一個(gè)傳參的函數(shù)如上例中的 show(c1,c2),使用.proxy()也有幾個(gè)場(chǎng)景,按需求進(jìn)行傳參,如:

1. .proxy( show, document, c1, c2 ) // --> 加()后,才進(jìn)行調(diào)用

2. .proxy( show, document )( c1, c2 )  //   --> 這就直接調(diào)用了

    <script>
     // 利用賦值 var that = this; 來改變嵌套函數(shù)的'this'指向
       $('div').on('click', function() {
        var that = this
        setTimeout(function() {
           console.log(that) // -> div
       })
     })
   </script>
    <script>
     // 利用es6 箭頭函數(shù) 改變 this指向
      $('div').on('click', function() {
         setTimeout(() => {
         console.log(this) // -> div
        })
     })
    </script>

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享jquery改變this指向的方法內(nèi)容對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,遇到問題就找億速云,詳細(xì)的解決方法等著你來學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI