文章詳情頁
javascript - 如何優化jquery循環append操作?
瀏覽:119日期:2023-05-03 10:21:08
問題描述
項目里有一個頁面展示功能,需要在指定的class所屬的標簽里添加canvas標簽,因為有查詢功能,所以要根據查詢的數據量不同來添加相應數量的canvas標簽,我現在是用循環操作,先隱藏指定的class標簽,每次循環都用append添加到指定的class的標簽里,循環完后再顯示那個隱藏的class標簽。這樣數據量小的時候頁面渲染的時間還算正常,一秒就可以了,但是只要數據量一大,差不多300條以上,就要幾秒的時間才能渲染完,500條數據就要5秒左右,上千條就要十多秒了。因為我是用thinkphp框架,一開始是想先把canvas標簽寫到html頁面里后面再用Js去修改css樣式,但是因為canvas標簽要用id來操作,而我需要添加很多canvas標簽,id又不能重復,所以選擇用js動態添加的方式。想請教大神們有沒有其他思路來解決這個問題?(ps:我不會vue或者react這種框架,要換這些的話還得從頭學起,暫時不考慮前端方面用這些重做)
問題解答
回答1:自己相當于構建了虛擬節點啊、
遍歷結束了、拼接好了一大堆節點、包一層容器
append一次就好了
標簽:
JavaScript
上一條:javascript - easyui的datebox修改后禁用值會發生變化,怎么解決下一條:javascript - ios上fixed定位問題,定位在底部的按鈕不顯示了,但是又可以點擊到,換了一個類名就可以顯示了,但是設置的字體大小卻失效了
相關文章:
1. Docker for Mac 創建的dnsmasq容器連不上/不工作的問題2. css3 - 圖片等比例縮放3. html - css3中多列高度 統一4. javascript - 使用angular 的ui-sref 中出現了中文參數,點擊跳轉后瀏覽器的地址欄里出現轉義后的%AE....%a%45. css3 - 如何將網頁CSS背景圖高斯模糊且全屏顯示6. javascript - 一個賦值運算的問題7. css3 - animation屬性,safari瀏覽器不支持相關效果8. javascript - 求賜教:網易郵箱Web端模擬登錄看信的加密參數_ntes_nnid、_ntes_nuid9. css - jq有無現成函數改變rotateX/Y的deg10. javascript - QWebEngineView 如何爬 angular 的動態數據?
排行榜
