課程
/前端開(kāi)發(fā)
/jQuery
/jQuery基礎(chǔ)(三)—事件篇
老師的這個(gè)例子中this指向的是誰(shuí)?
2018-06-20
源自:jQuery基礎(chǔ)(三)—事件篇 5-2
正在回答
在事件處理程序內(nèi)部,this始終等于event.currentTarget,而event.target只包含事件的實(shí)際目標(biāo)。
如果直接將事件處理程序制定給了目標(biāo)元素,那么this、currentTarget、target指向是相同的。如鼠標(biāo)單擊事件,$(#btn).click(function(){…………})由于click事件的目標(biāo)是按鈕,事件處理程序也制定給了按鈕,所以三個(gè)值相同。
如果事件處理程序存在于按鈕的父節(jié)點(diǎn)中,那么值是不同的。例如:
$(body).click(function() {………………})那么此時(shí)點(diǎn)擊按鈕元素,this和event.currentTarget都指向document.body,event.target指向按鈕元素。
誰(shuí)綁定的事件就指向的誰(shuí)
指向觸發(fā)事件的dom元素
好吃的蛋包飯
Silent_Walke 回復(fù) 好吃的蛋包飯
<!DOCTYPE html>
<html>
<head>
<script src="https://cdn.bootcss.com/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
? $("body").on("click", ".test",function(){
? ? alert(JSON.stringify($(this)));
? this.a = 'aaa'
? $('test')
? alert(JSON.stringify($('.test')[0].a)); /// aaa
? });
});
</head>
<body>
<p class="test">點(diǎn)擊這個(gè)段落。</p>
</body>
</html>
舉報(bào)
jQuery第三階段開(kāi)啟事件修煉,掌握對(duì)頁(yè)面進(jìn)行交互的操作
1 回答機(jī)制委托一般用于什么場(chǎng)景
1 回答這個(gè)委托機(jī)制一定是從最里面的那個(gè)元素開(kāi)始向上冒泡嗎
4 回答事件委托應(yīng)該委托到哪一級(jí)?
3 回答說(shuō)一些我對(duì)委托機(jī)制的理解,歡迎提出不同的看法?
3 回答$('#div1').mousedown(function () {this})中的this指向哪里?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2018-08-05
在事件處理程序內(nèi)部,this始終等于event.currentTarget,而event.target只包含事件的實(shí)際目標(biāo)。
如果直接將事件處理程序制定給了目標(biāo)元素,那么this、currentTarget、target指向是相同的。如鼠標(biāo)單擊事件,$(#btn).click(function(){…………})由于click事件的目標(biāo)是按鈕,事件處理程序也制定給了按鈕,所以三個(gè)值相同。
如果事件處理程序存在于按鈕的父節(jié)點(diǎn)中,那么值是不同的。例如:
$(body).click(function() {………………})那么此時(shí)點(diǎn)擊按鈕元素,this和event.currentTarget都指向document.body,event.target指向按鈕元素。
2018-06-20
誰(shuí)綁定的事件就指向的誰(shuí)
2018-06-20
指向觸發(fā)事件的dom元素
2018-06-20
<!DOCTYPE html>
<html>
<head>
<script src="https://cdn.bootcss.com/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
? $("body").on("click", ".test",function(){
? ? alert(JSON.stringify($(this)));
? this.a = 'aaa'
? $('test')
? alert(JSON.stringify($('.test')[0].a)); /// aaa
? });
});
</script>
</head>
<body>
<p class="test">點(diǎn)擊這個(gè)段落。</p>
</body>
</html>