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

js函数中this的传值的问题

js函数中this的传值的问题

DIEA 2018-09-04 09:10:06
<html><head>    <meta charset="UTF-8">    <title>Document</title>    <script type="text/javascript">        var i=1;    window.onload = function()    {   node_name = document.body.firstChild;        node_name.setAttribute("src","images/sh_hero_1.jpg");        node_name.setAttribute("onclick","c(this)");    }    function c(q)    {        i++;        q.setAttribute("src","images/sh_hero_"+i+".jpg");    }    </script></head><body><img/></body></html>node_name.setAttribute("onclick","c(this)");中的this工作原理是什么?为什么能把node_name这个局部变量传出去?新人小白求轻拍。
查看完整描述

1 回答

?
萧十郎

TA贡献1815条经验 获得超13个赞

<button onclick="c(this)"></button><script>function c(el){    //此时el引用的是button}</script>

你的代码node_name.setAttribute("onclick","c(this)");其实是动态地添加类似上面button中的onclick属性。
当按下按钮时,会执行onclick中的代码,在c(this)这段短短的代码中,this就是指向当前元素。


查看完整回答
反对 回复 2018-10-09
  • 1 回答
  • 0 关注
  • 1415 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信