this的用法

來源:互聯網
上載者:User

標籤:rip   tag   alt   地方   oct   win   lis   ges   css   

 

因為迴圈是非常快的,我們手動點擊的時候,for迴圈已經迴圈完了。如果在迴圈裡面添加點擊事件,點擊事件的i的值就是迴圈結果的那個值,而不是對應的迴圈的值,此時,我們就需要用到this   來實現  點擊哪一個,this就指向哪一個

this:   指的是當前的對象,  是關鍵詞,不能當做變數名,只能讀,不能寫,它的值只能用來用,而不能修改  

通常,this有2種用法,第一種,在函數外部使用,此時,this的值指向的是Windows    

第二種,在函數內部使用。又分為2種情況,1,直接調用函數,this同樣指向的是Windows    2,被事件調用,並且是以賦值的形式出現的,此時this指向的是誰調用了函數,this就指向誰的。這就很好地方便了再迴圈裡面使用this來實現,每一個的事件發生。

可以通過以下例子開具體瞭解:

首先,我們先來建立幾個div   實現,點擊任意一個div  這個被點擊的div的背景顏色就相應的作出改變  改變成為紅色

html

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>this批量改變元素的樣式</title>
<link rel="stylesheet" href="../css/this批量改變元素的樣式.css">
</head>
<body>
<div id="content">
<div class="box"></div>
<div class="box"></div>
<div class="box"></div>
<div class="box"></div>
<div class="box"></div>
</div>
<script src="../js/this批量改變元素的樣式.js"></script>
</body>
</html>

css
.box{
width: 200px;
height: 200px;
margin-right: 20px;
background-color: gold;
float: left;
}


此時,頁面中就有5個顏色為金色的div

js代碼:

var  bigDiv=document.getElementById(‘content‘);
var listOfDiv=bigDiv.getElementsByTagName(‘div‘);
for(var i=0;i<listOfDiv.length;i++){
listOfDiv[i].onclick=function(){
this.style.backgroundColor=‘red‘;
};
}


這樣就可以實現,任意點擊一個div 這個div的顏色就變為紅色

 


 




 

this的用法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.