国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開(kāi)發(fā) > JS > 正文

JavaScript高級(jí)函數(shù)應(yīng)用之分時(shí)函數(shù)實(shí)例分析

2024-05-06 16:45:32
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

本文實(shí)例講述了JavaScript高級(jí)函數(shù)應(yīng)用之分時(shí)函數(shù)。分享給大家供大家參考,具體如下:

一、前提介紹:

某些函數(shù)是用戶主動(dòng)調(diào)用的,但因?yàn)橐恍┛陀^的原因,這些函數(shù)會(huì)嚴(yán)重影響頁(yè)面的性能。

二、應(yīng)用場(chǎng)景:

在短時(shí)間內(nèi)往頁(yè)面中大量添加DOM節(jié)點(diǎn)顯然會(huì)讓瀏覽器吃不消,往往會(huì)導(dǎo)致瀏覽器的卡頓甚至假死。

三、解決方案:

以上述添加節(jié)點(diǎn)的例子來(lái)說(shuō)明問(wèn)題,我們將創(chuàng)建節(jié)點(diǎn)的工作分批進(jìn)行,比如把1秒鐘創(chuàng)建1000個(gè)節(jié)點(diǎn),改為每隔200毫秒創(chuàng)建8個(gè)節(jié)點(diǎn)。

四、實(shí)現(xiàn)代碼如下:

var timeChunk = function(ary, fn, count){  var obj,t;  var len = ary.length;  var start = function(){    for(var i=0;i<Math.min(count ||1, ary.length );i++){      var obj = ary.shift();      fn(obj);    }  };  return function(){    t = setInterval(function(){      if(ary.length === 0){ //如果全部節(jié)點(diǎn)都已經(jīng)被創(chuàng)建好        return clearInterval(t);      }      start();    }, 200); //分批執(zhí)行的時(shí)間間隔,也可以用參數(shù)的形式傳入  };};

五、調(diào)用驗(yàn)證方法

var ary = ['aa','bb','cc',.....];var renderFriendList = timeChunk( ary, function(n){  var div = document.createElement('div');  div.innerHTML = n;  document.body.appendChild(div);},8);renderFriendList();

希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到JavaScript/Ajax教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 乐山市| 嘉黎县| 昆明市| 蒙山县| 长海县| 定兴县| 黄山市| 会昌县| 同仁县| 东兰县| 成安县| 上虞市| 阳江市| 赞皇县| 温州市| 渝北区| 石柱| 综艺| 中宁县| 迁西县| 邵阳市| 哈尔滨市| 塔河县| 会理县| 化德县| 平凉市| 麻城市| 海原县| 澄江县| 济南市| 陆河县| 安西县| 桂平市| 晋江市| 连城县| 体育| 治县。| 邢台市| 安泽县| 湛江市| 科技|