隨機(jī)生成10*10方塊,并實(shí)現(xiàn)隨機(jī)變色

閑來(lái)無(wú)聊,做個(gè)小東西玩 , 在body中隨機(jī)生成10*10方塊 , 并實(shí)現(xiàn) 隨機(jī) 顏色


</br>

首先 介紹一個(gè) 新的 概念 文檔碎片


</br>

1.概念

經(jīng)JS操作DOM節(jié)點(diǎn)可以是節(jié)點(diǎn)的單位,讓我們連接節(jié)點(diǎn),能夠createElement,createTextNode,然后潮梯,appendChild定在一起,然后再用appendChild或insertBefor加入到DOM樹(shù)中.但假設(shè)要往DOM樹(shù)中動(dòng)態(tài)加入大量的節(jié)點(diǎn).就會(huì)非常麻煩.并且每次都會(huì)刷新DOM逊谋。造成性能上的缺陷逾苫。

2.

效果圖

我是效果圖
<script type="text/javascript">

    function createBox(){
        console.log("createBox");
        //創(chuàng)建盒子的方法
        document.body.innerHTML = "";//先清空 body里面的內(nèi)容
        //下面是 獲取 瀏覽器的寬高
        var mWidth = document.documentElement.clientWidth || docuemnt.body.clientWidth;
        var mHeight = document.documentElement.clientHeight || document.body.clientHeight;
        // console.log(mWidth);
        // console.log(mHeight);
        //分 10 份
        var nDivWidth = mWidth/10;
        var nDivHeight = mHeight/10;
        // console.log(nDivWidth);
        // console.log(nDivHeight);
        //創(chuàng)建文檔 碎片
        var oFrag = document.createDocumentFragment();

        for(var row=0;row<10;row++){
            for(var col=0;col<10;col++){
                var oDiv = document.createElement("div");

                oDiv.style.position = "absolute";//絕對(duì) 定位
                oDiv.style.height = nDivHeight +"px";
                oDiv.style.width = nDivWidth + "px";
                
                //每個(gè)div的位置
                oDiv.style.left = nDivWidth * col + "px";
                oDiv.style.top = nDivHeight * row + "px";


                //下面隨機(jī)生RGB顏色值, 隨機(jī) 數(shù)介于 0-256之間
                oDiv.style.background = "RGB("+Math.floor(Math.random()*256)+","+Math.floor(Math.random()*256)+","+Math.floor(Math.random()*256)+")";
                //把每次創(chuàng)建 的div 追加給文檔碎片
                oFrag.appendChild(oDiv);
            }
        }
        //最后一次性加 文檔 碎片追加到body中,瀏覽器只渲染一次,提高性能
        document.body.appendChild(oFrag);
    }

    // 讓這些盒子的背景色隨機(jī)發(fā)生變化的方法
    function changeColor(){
        document.getElementsByTagName('div').item(Math.random()*100).style.background = "RGB("+ Math.floor(Math.random()*256)+","+Math.floor(Math.random()*256)+","+Math.floor(Math.random()*256)+")";
    }

    // 當(dāng)瀏覽器加載完成之后,運(yùn)行fn方法 , 自動(dòng)創(chuàng)建 背景顏色不同的10行10列小盒子,并且每隔兩秒鐘有一個(gè)小盒子顏色會(huì)變一次
    window.onload = function(){
        console.log("onload");
        createBox();
        window.setInterval(changeColor,100);
    }
    //方法名后面 不加括號(hào), 加了括號(hào) 就表示 把這個(gè)方法的返回 值賦給 onresize事件了
    window.onresize = createBox;
</script>
-----------------------------markDown 實(shí)踐中, 不喜忽噴----------------------------------------
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市放坏,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖甚淡,帶你破解...
    沈念sama閱讀 212,599評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異捅厂,居然都是意外死亡贯卦,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,629評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門焙贷,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)撵割,“玉大人,你說(shuō)我怎么就攤上這事辙芍》缺颍” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 158,084評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵故硅,是天一觀的道長(zhǎng)庶灿。 經(jīng)常有香客問(wèn)我,道長(zhǎng)吃衅,這世上最難降的妖魔是什么往踢? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,708評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮徘层,結(jié)果婚禮上峻呕,老公的妹妹穿的比我還像新娘利职。我一直安慰自己,他們只是感情好瘦癌,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,813評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布眼耀。 她就那樣靜靜地躺著,像睡著了一般佩憾。 火紅的嫁衣襯著肌膚如雪哮伟。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 50,021評(píng)論 1 291
  • 那天妄帘,我揣著相機(jī)與錄音楞黄,去河邊找鬼。 笑死抡驼,一個(gè)胖子當(dāng)著我的面吹牛鬼廓,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播致盟,決...
    沈念sama閱讀 39,120評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼碎税,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了馏锡?” 一聲冷哼從身側(cè)響起雷蹂,我...
    開(kāi)封第一講書(shū)人閱讀 37,866評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎杯道,沒(méi)想到半個(gè)月后匪煌,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,308評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡党巾,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,633評(píng)論 2 327
  • 正文 我和宋清朗相戀三年萎庭,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片齿拂。...
    茶點(diǎn)故事閱讀 38,768評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡驳规,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出署海,到底是詐尸還是另有隱情吗购,我是刑警寧澤,帶...
    沈念sama閱讀 34,461評(píng)論 4 333
  • 正文 年R本政府宣布叹侄,位于F島的核電站巩搏,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏趾代。R本人自食惡果不足惜贯底,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,094評(píng)論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧禽捆,春花似錦笙什、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,850評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至浊服,卻和暖如春统屈,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背牙躺。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,082評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工愁憔, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人孽拷。 一個(gè)月前我還...
    沈念sama閱讀 46,571評(píng)論 2 362
  • 正文 我出身青樓吨掌,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親脓恕。 傳聞我的和親對(duì)象是個(gè)殘疾皇子膜宋,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,666評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容