文章詳情頁
javascript - 如何優化jquery循環append操作?
瀏覽:85日期: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. python-mysql Commands out of sync2. javascript - angular里一個關于ng-bind的問題3. mysql - 我用SQL語句 更新 行的時候,發現全部 中文都被清空了,請問怎么解決?4. mysql - 數據庫建表方面的問題?5. javascript - 求教各位,本地HTML頁面怎么在DIV中嵌套服務器上的頁面內容?不用iframe。6. [前端求職必看]前端開發面試題與答案精選_大綱7. javascript - IOS微信audio標簽不能通過touchend播放8. java中這個頁面默認是utf-8編碼的,1輸出亂碼可以理解,可是2就不理解了?9. python - xpath提取網頁路徑沒問題,但是缺失內容?10. javascript - angularJS指令如何暴露API給外面的controller使用?
排行榜
