文章详情页
javascript - 如何优化jquery循环append操作?
浏览:146日期: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 start -a dockername 老是卡住,什么情况?2. java内存模型的happens-before语义顺序问题3. java - 配置tomcat免安装版,无法启动 返回错误码44. python运行后没有任何反馈要怎么排查5. javascript - js setTimeout在双重for循环中如何使用?6. web - nginx为什么上传了网页文件也无法访问?7. java - 关于i++的一个题目8. 编程 - java 为什么没有静态方法接口,有没有哪门语言有静态方法接口。9. linux - 阿里云服务器(centos)中svn同步web目录的问题?10. javascript - webpack build出错后如何定位文件?
排行榜
