javascript事件中的this

发布日期:2019-11-20 作者:mi52.com 人气:

<script>

        function btnClick3() {

            alert(this.value);//在事件响应函数调用的函数里就不能通过this来获得事件对象了

        }

        function btnClick4(btn) {

            alert(btn.value);//在事件响应函数中,将this作为参数传递过来就可以了

        }

        function btnClick5() {

            alert(event.srcElement.value);//this和event.srcElement的语义是不一样的,this就是表示当前监听事件的这个对象,event.srcElement是引发事件的对象

        }

    </script>

事件中的this,除了可以使用event.srcElement在事件响应函数中,this表示发生事件的控件。只有在事件响应函数才能使用this获得发生事件的控件中,在事件响应函数调用的函数中不能使用,如果要使用则要将this传递给函数或者使用event.srcElement。<br />

<input type="button" value="click1" onclick="alert(event.srcElement.value)" />&nbsp;&nbsp;

    <input type="button" value="click2" onclick="alert(this.value)" /><br />

    

    <input type="button" value="click3" onclick="btnClick3()" />&nbsp;&nbsp;

    <input type="button" value="click4" onclick="btnClick4(this)" />&nbsp;&nbsp;

    <input type="button" value="click5" onclick="btnClick5()" />

以上分别弹出  click1   click2  undefined  click4  click5


返回顶部

拨打电话
首页