js練習-控制div屬性


要開始練練js了,決定先按照Ferris大大的索引表一個個練,頭一個就是控制div屬性啦。看似挺簡單的,不過平時jquery用慣了,用起來原生js還有點手生呢。

總之就是模仿加練習啦,先看看效果:

一、結構就是這樣啦:(就是喜歡用a標簽,任性。)

<div id="smallBox01">
    <a href="#" class="button01">變寬</a>
    <a href="#" class="button01">變高</a>
    <a href="#" class="button01">變色</a>
    <a href="#" class="button01">隱藏</a>
    <a href="#" class="button01">重置</a>
</div>
<div id="changeBox01"></div>

二、樣式呢

#changeBox01{height: 100px;width: 100px;background-color:#77948d;}

原先盒子的寬高,背景色(其他都不是重點啦)

 三、js實現

window.onload=function(){
    practice01();
};
var practice01=function(){
    //取到按鈕的父元素
    var oControl=document.getElementById('smallBox01');
    //取到每一個a標簽
    var oBtn=oControl.getElementsByTagName('a');
    // 取到要改變的盒子
    var oDiv=document.getElementById('changeBox01');
    //建立一個二維數組存放分別每個按鈕要改變的樣式和樣式值
    var oAtt=[["width","200px"],["height","200px"],["background","#6E5794"],["display","none"],["display","block"]];
    //創建改變樣式的值
    function changeStyle(elem,attr,value){
        elem.style[attr]=value;
    }
    //遍歷a標簽
    for (var i = 0; i < oBtn.length; i++) {
        //設置對應的index
        oBtn[i].index=i;
        //綁定點擊事件
        oBtn[i].onclick=function(){
            //重置按鈕,清空之前的樣式
            this.index==oBtn.length-1 &&(oDiv.style.cssText="");
            //改變對應的樣式
            changeStyle(oDiv,oAtt[this.index][0],oAtt[this.index][1]);
        };
    }
};

我想注解的挺清楚了吧。

四、原作中的這句 this.index==oBtn.length-1 &&(oDiv.style.cssText="");

剛開始理解了半天,后來百度才知道。是指前半句this.index==oBtn.length-1為true時,執行下半句

也就是當遍歷到重置按鈕時,先清除之前添加的樣式

用“與”(&&)代替了if判斷語句,小技巧get。

總結:這算是最最基礎的js練習了,模仿過一遍熟悉了通過js控制css樣式改變(太懶了,變量名都抄原作的……下次不這樣了,囧)

在線查看:wzlinsen.com/js.html#js01   Ferris大大原作:http://fgm.cc/learn/

個人簡歷:wzlinsen.com

轉載請注明來自:http://www.cnblogs.com/wzls/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM