久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

javascript - 事件函數中this指向

瀏覽:116日期:2023-06-05 10:16:35

問題描述

javascript - 事件函數中this指向

<!DOCTYPE HTML><html lang='en-US'><head> <meta charset='UTF-8'> <title></title></head><body><h2 onmousedown = 'f1(this)'>事件中的this</h2> <script type='text/javascript'>var h2 = document.getElementsByTagName(’h2’)[0];//HTML方式綁定function f1(obj){ console.log(obj);}f1( this );/*//DOM 0級綁定方式h2.onclick = function(){ console.log(this);}//DOM 2級方式h2.addEventListener(’mouseover’,function(){ console.log(this);});*/ </script> </body></html>

問題解答

回答1:

javascript的this跟函數定義在哪里無關,跟誰調用它有關。

回答2:

h2那里因為是綁定在事件上的,因此 this 指向的是這個元素,你可以簡單理解為是

var dom = document.getElementsByTagName(’h2’)dom.onmousedown = function(){ f1(this)}回答3:

http://www.cnblogs.com/soulii...看看這個

回答4:

前者相當于`請輸入代碼

var h2 = document.querySelectorAll('h2')[0];function fn(){ console.log(this);}h2.onmousedown = fn;window.fn();

this指向調用它的對象,你定義在全局環境里的變量和函數默認是window對象下得屬性和方法,所以當你在全局環境中執行fn()時this指向window

回答5:

你獲取到哪個dom,就是對應的this。

回答6:

這兩個不是一回事呀。

<h2 onmousedown='f1(this)'></h2>h2.onmouseover=f1()h2.addEventListern(f1)

這三種方式都是為h2綁定了一個mouseover事件發生時的名為f1回調函數,事件綁定的回調函數指向DOM元素本身。

你問題中的

//HTML方式綁定function f1(obj){ console.log(obj);}f1( this );

這段程序是在window作用域下運行的,this自然就指向window。這段代碼跟h2無關了(未綁定)。

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 欧美日本免费一区二区三区 | 精品国产一区av | 国产在线精品一区 | 成人午夜在线视频 | 日本黄色a视频 | 国产精品久久久久久亚洲调教 | 日韩性视频 | 亚洲影视一区二区 | 久久99视频| 午夜精品网站 | 日韩成人高清 | 欧美黑人一区 | 操人网| 国产精品久久久久久亚洲调教 | 国产精品久久久久无码av | 午夜国产| 91精品久久久久久久久中文字幕 | 亚洲一区二区精品 | 日本日韩中文字幕 | 欧美精品欧美极品欧美激情 | 暖暖日本在线视频 | 欧美一级免费 | 一区二区三区免费在线观看 | 午夜免费av | 四虎永久免费在线 | 欧美久久久网站 | 欧美日韩在线观看中文字幕 | 免费看男女www网站入口在线 | 在线高清av | 99色播| 日韩素人一区二区三区 | 国产精品香蕉在线观看 | 国产真实乱全部视频 | 久久久精品久久久久久 | 伊人精品视频在线观看 | 国产精品自产拍在线观看桃花 | 日本啪啪网站 | 日韩精品视频在线观看一区二区 | 黄色在线免费 | 国产精品久久久一区二区三区 | 99国产精品久久久久久久成人热 |