jquery怎么改变this指向


本文摘自PHP中文网,作者coldplay.xixi,侵删。

jquery改变this指向的方法:1、利用赋值【var that=this;】来改变嵌套函数的【this】指向;2、利用es6箭头函数改变this指向,代码为【$('div').on('click', function()】。

本教程操作环境:windows10系统、jquery2.2.4,本文适用于所有品牌的电脑。

jquery改变this指向的方法:

利用赋值var that=this; 来改变嵌套函数的 'this' 指向

利用es6箭头函数 改变this指向

1

2

3

4

5

6

7

8

  <script>

    function show() {

     alert(this)

    }

  //   show() //-> window

    //   show.call(document) // ->document  | 原生的方法

   $.proxy(show, document)() // ->document  | jQuery方法

</script>

tips: 对于一个传参的函数如上例中的 show(c1,c2),使用.proxy()也有几个场景,按需求进行传参,如:

1. .proxy( show, document, c1, c2 ) // --> 加()后,才进行调用

2. .proxy( show, document )( c1, c2 ) // --> 这就直接调用了

1

2

3

4

5

6

7

8

9

<script>

  // 利用赋值 var that = this; 来改变嵌套函数的'this'指向

    $('div').on('click', function() {

     var that = this

     setTimeout(function() {

        console.log(that) // -> div

    })

  })

</script>

1

2

3

4

5

6

7

8

<script>

 // 利用es6 箭头函数 改变 this指向

  $('div').on('click', function() {

     setTimeout(() => {

     console.log(this) // -> div

    })

 })

</script>

相关免费学习推荐:JavaScript(视频)

以上就是jquery怎么改变this指向的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

jQuery判断是否存在滚动条的方法

jQuery如何显示和隐藏元素

jQuery中如何数组去重复数据

jQuery判断是否是ie的方法

jQuery如何获取随机数不重复

jQuery 2.x和1.x的区别是什么

jQuery需要下载吗

jQuery中ajax提交数据乱码怎么办

jQuery如何设置不可点击

jQuery和react的区别是什么?

更多相关阅读请进入《jQuery》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...