老师讲的比较零碎

老师讲的比较零碎

可以请老师以文字形式将dom操作优化的几点描述一遍吗?谢谢老师

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕慕子 2019-10-11 19:22:14

同学你好,对于你能够自己总结的行为,老师给你点个赞, 学习就是一个去繁从简的过程,这是我学习进步的证明哦,所以不要觉得自己总结的啰嗦,这些都是你现阶段学习的体会,慢慢的随着我们知识的积累,掌握的更多了,可以从现在的体会去简化之前的总结哦

DOM操作优化,主要目的就是减少DOM的操作次数, 老师这里给出一个示例总结方式:

  1. 获取元素方面优化

    (1)推荐尽量使用id去查找元素, 提升查找DOM元素的速度(因为一般页面中ID名只有一个)

    (2)可以使用已经获取到的父元素查找到它下面的子元素, 就不要使用document了

    (3)可以使用变量保存获取到的DOM元素,方便下次直接使用变量操作元素, 避免多次使用querySelector等方法去查找DOM

  2. 添加内容

    (1)如下图所示,如果是简单的添加一些字符串内容,  可以先声明一个变量,保存循环的拼接结果, 等循环结束后,最后将结果添加到dom结构中, 这样只需要操作一次DOM就可以了。 示例:

    http://img1.sycdn.imooc.com//climg/5da060f60902f2de09550474.jpg

    (2)如果在循环中不可避免的需要添加DOM结构, 可以使用文档片段。

    因为 DocumentFragment 不是真实 DOM 树的一部分,他的改变不会触发DOM操作,所以先将所有节点保存在文档片段中,循环完成之后, 只需要将文档片段追加到DOM结构中即可

    http://img1.sycdn.imooc.com//climg/5da0630c092963d409550601.jpg

    (3)可以减少节点的创建, 在循环外创建一个节点, 在循环内部使用cloneNode方法客隆多个节点

    (4)for循环中的条件每执行一次都会比较一次, 可以使用变量保存元素的长度, 避免每次都计算一次长度

  3. 修改样式

    (1)避免直接使用js的style方式修改元素的样式, 推荐先通过类名在CSS中设置好样式, 然后通过增加删除类名的方式修改样式


目前阶段, 同学可以先了解这些方式,不用可以去记忆, 在自己写代码的过程中多注意一点, 慢慢的养成习惯就好了

如果帮助到了你, 欢迎采纳!    

祝学习愉快~~~~

好帮手慕慕子 2019-10-11 18:22:23

同学你好, 对于视频中同学没有听明白的点,可以提出来让帮助您解答, 总结知识这些是需要同学自己动手去操作哦,我们也鼓励同学自己动手总结老师视频中讲解的知识点哦,在你自己总结的过程中, 也是对学习过的知识好好在梳理一遍, 加深自己的记忆与理解,最后形成一份自己理解的文档, 这样对自己的能力才会更有提升和帮助哦

老师这里给同学提供一个总结的参考思路,可以参考ppt中的大纲, 从这几点进行总结梳理哦

http://img1.sycdn.imooc.com//climg/5da055a70996780307020418.jpg

http://img1.sycdn.imooc.com//climg/5da0559509ebc46208490461.jpg

http://img1.sycdn.imooc.com//climg/5da0559c09dad8da08000430.jpg

如果在梳理的过程中遇到不明白的, 可以再次提问, 老师一定会帮助您解决的

如果帮助到了你, 欢迎采纳!

祝学习愉快~~~~~

  • 提问者 hyperse #1
    我总结了,但是感觉有点啰嗦,所以希望老师能给份精辟一点的。。
    2019-10-11 18:27:29
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
3.WebAPP开发与小程序
  • 参与学习           人
  • 提交作业       622    份
  • 解答问题       6815    个

微信带火了小程序,也让前端工程师有了更多的展现机会,本阶段带你从移动基础知识的学习到webAPP开发,及小程序开发,让你PC端与移动端两端通吃。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师