欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js循環(huán)改變div顏色具體方法

 更新時(shí)間:2013年06月25日 11:40:28   作者:  
本篇文章主要介紹了js循環(huán)改變div顏色具體方法,需要的朋友可以參考一下

在使用javascript過程中,想循環(huán)遍歷一個(gè)數(shù)組,經(jīng)常使用的語法有兩種:

復(fù)制代碼 代碼如下:

 for (var i; i < array.length; i++) {
     statement;
 }
 for (var i in array) {
     statement;
 }

這兩種用法看起來能做同樣的事情,但實(shí)際上兩個(gè)循環(huán)的循環(huán)次數(shù)一般是不一樣的。
源碼如下:
復(fù)制代碼 代碼如下:

 <!DOCTYPE html>
 <html>
 <head>
 <style>
 #button{text-align:center;}
 #outer{width:330px; height:100px; margin:10px auto;}
 #outer div{float:left;width:100px;height:100px;margin:0px 5px;background:black;}
 </style>

 <script>
 window.onload = function() {
     var obutton = document.getElementsByTagName("button")[0];
     var outer = document.getElementById("outer");
     var outerDiv = outer.getElementsByTagName("div");
     obutton.onclick = function() {
         for(var p in outerDiv) outerDiv[p].style.background = "red";
     };
 };

 </script>
 </head>
 <body>
 <div id="button">
 <button>點(diǎn)擊變紅色</button>
 </div>
 <div id="outer">
     <div></div>
     <div></div>
     <div></div>
 </div>
 </body>
 </html>

這段代碼用了 for - in 語句做循環(huán),看上去沒有問題。
可是在瀏覽器調(diào)試的時(shí)候,會(huì)報(bào)錯(cuò):
"Uncaught TypeError: Cannot set property 'background' of undefined"
為什么會(huì)這樣呢?
如果我們把 stament 的內(nèi)容改一下,就會(huì)發(fā)現(xiàn)問題了:
 for(var p in outerDiv) alert(p);
結(jié)果輸出是:0 1 2 length item
所以,當(dāng) property 取到 length 和 item 時(shí),再試圖用調(diào)用 style 方法,當(dāng)然就 undefined 了。 修改如下:

復(fù)制代碼 代碼如下:

 <!DOCTYPE html>
 <html>
 <head>
 <style>
 #button{text-align:center;}
 #outer{width:330px; height:100px; margin:10px auto;}
 #outer div{float:left;width:100px;height:100px;margin:0px 5px;background:black;}
 </style>

 <script>
 window.onload = function() {
     var obutton = document.getElementsByTagName("button")[0];
     var outer = document.getElementById("outer");
     var outerDiv = outer.getElementsByTagName("div");
     obutton.onclick = function() {
         for (var i = 0; i < outerDiv.length; i++){
             outerDiv[i].style.background = "red";
         }
     };
 };

 </script>
 </head>
 <body>
 <div id="button">
 <button>點(diǎn)擊變紅色</button>
 </div>
 <div id="outer">
     <div></div>
     <div></div>
     <div></div>
 </div>
 </body>
 </html>

相關(guān)文章

  • layui數(shù)據(jù)表格重載實(shí)現(xiàn)往后臺(tái)傳參

    layui數(shù)據(jù)表格重載實(shí)現(xiàn)往后臺(tái)傳參

    今天小編就為大家分享一篇layui數(shù)據(jù)表格重載實(shí)現(xiàn)往后臺(tái)傳參,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • layui.js實(shí)現(xiàn)的表單驗(yàn)證功能示例

    layui.js實(shí)現(xiàn)的表單驗(yàn)證功能示例

    這篇文章主要介紹了layui.js實(shí)現(xiàn)的表單驗(yàn)證功能,結(jié)合實(shí)例形式分析了基于layui.js的事件監(jiān)聽、驗(yàn)證、判定等相關(guān)操作技巧,需要的朋友可以參考下
    2017-11-11
  • JS中frameset框架彈出層實(shí)例代碼

    JS中frameset框架彈出層實(shí)例代碼

    這篇文章主要介紹了JS中frameset框架彈出層實(shí)例代碼 的相關(guān)資料,需要的朋友可以參考下
    2016-04-04
  • 微信小程序中如何使用store數(shù)據(jù)共享

    微信小程序中如何使用store數(shù)據(jù)共享

    全局?jǐn)?shù)據(jù)共享?全局?jǐn)?shù)據(jù)共享(狀態(tài)管理)是為了解決組件之間數(shù)據(jù)共享的問題,開發(fā)中常用的全局?jǐn)?shù)據(jù)共享方案有:Vuex、Redux、MobX等,這篇文章主要介紹了微信小程序中如何使用store數(shù)據(jù)共享,需要的朋友可以參考下
    2023-04-04
  • uniapp退出關(guān)閉當(dāng)前小程序或APP的簡(jiǎn)單實(shí)現(xiàn)

    uniapp退出關(guān)閉當(dāng)前小程序或APP的簡(jiǎn)單實(shí)現(xiàn)

    最近通過Uniapp開發(fā)APP又一個(gè)非常實(shí)用的功能,這篇文章主要給大家介紹了關(guān)于uniapp退出關(guān)閉當(dāng)前小程序或APP的簡(jiǎn)單實(shí)現(xiàn),文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • 潛說js對(duì)象和數(shù)組

    潛說js對(duì)象和數(shù)組

    潛說js對(duì)象和數(shù)組 對(duì)象是一個(gè)無序?qū)傩约? 每個(gè)屬性都有自己的名字和值
    2011-05-05
  • javascript+HTML5 Canvas繪制轉(zhuǎn)盤抽獎(jiǎng)

    javascript+HTML5 Canvas繪制轉(zhuǎn)盤抽獎(jiǎng)

    這篇文章主要為大家詳細(xì)介紹了javascrip+HTML5 Canvas繪制轉(zhuǎn)盤抽獎(jiǎng)的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-04-04
  • javascript中局部變量和全局變量的區(qū)別詳解

    javascript中局部變量和全局變量的區(qū)別詳解

    本文主要是向大家詳細(xì)的對(duì)比分析了javascript中局部變量和全局變量的區(qū)別,是篇非常不錯(cuò)的文章,值得仔細(xì)去品讀,推薦給小伙伴們。
    2015-02-02
  • 用Js實(shí)現(xiàn)的動(dòng)態(tài)增加表格示例自己寫的

    用Js實(shí)現(xiàn)的動(dòng)態(tài)增加表格示例自己寫的

    動(dòng)態(tài)增加表格的方法有很多,但大多說實(shí)現(xiàn)起來比較繁瑣,本文的這個(gè)示例是作者自己手寫的,經(jīng)測(cè)試效果還不錯(cuò),但唯獨(dú)不兼容FF,感興趣的朋友可以參考下
    2013-10-10
  • js頁面加載后執(zhí)行的幾種方式小結(jié)

    js頁面加載后執(zhí)行的幾種方式小結(jié)

    在實(shí)際應(yīng)用中往往需要在頁面加載完畢之后再去執(zhí)行相關(guān)的js代碼,之所以這么操作是有道理的,如果是操作dom元素,如果相關(guān)元素沒有加載完成,而去執(zhí)行js代碼,可能會(huì)導(dǎo)致錯(cuò)誤
    2020-01-01

最新評(píng)論