首頁 > web前端 > js教程 > 主體

淺談javascript中this在事件中的應用_javascript技巧

WBOY
發布: 2016-05-16 16:13:57
原創
1133 人瀏覽過

this關鍵字在javascript中是非常強大的,但是如果你不清楚它是怎麼工作的就很難使用它.

複製程式碼 程式碼如下:

function dosomething(){ this.style.color="#fff"; }

上面這段程式碼中的this指向什麼呢,運行dosomething()會輸出什麼呢?

在javascript中,this總是指向當前執行的這個函數,或者把函數作為方法調用的這個對象.當我們在頁面上定義dosomething()這個方法後,this的所有者就是當前的頁面,或者說是全域物件.

所以我們執行dosomething()這個函數,會引發錯誤.因為函數的this指向的是全域物件window,而window物件沒有style屬性.

複製:

複製程式碼 程式碼如下:

element.onclick=dosomething;

dosomething()現在被整個複製到onclick屬性上作為一個方法.所以如果這個事件執行的話,this就指向這個HTML元素,相應HTML元素的color就會改變.dosomething每次複製到事件上,this就會指向目前執行這個方法的html元素.

引用:

複製程式碼 程式碼如下:


此時你沒有複製這個方法,而是引用了這個方法,onclick屬性並不包含實際的方法,僅僅只是一個方法的呼叫.當我們執行這個方法時,this再次指向全域window物件並引發錯誤.

以上就是本文的全部內容了,有需要的小夥伴好好來研究下吧。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板