-
浏览器提供的接口web api,页面交互。
-
DOM:文档对象模型,页面的接口,可以改变页面内容。
-
获取元素方法:id class 标签 父元素(获取来伪数组不能作为元素) h5:(querySelector)返回选择的第一个元素对象(‘.box’)(’#box)('标签’),querySelectorAll可以选择所有。
-
获取特殊元素:document.body(body) ; document.documentElement(html)。
-
获取属性值:元素.属性, 2.元素.getAttribute('属性‘)’自己创建的
-
事件
-
事件三要素:事件源(绑定),事件类型(滑动还是点击),事件处理程序(函数赋值)。btn.οnclick=function(){};
-
操作元素-修改元素的内容:innerText :不识别html标签,去除空格和换行。innerHTML :可以识别html标签,保留代码里的空格和换行。两者都是可读写。主流使用innerHTML.
-
修改表单属性:修改表单里面的内容不能用innerHTML.了,应使用value,2.disabled:可以禁用某个表单如按钮只能被点击一次。disabled:ture或者false。在函数里可以直接用this调用,如this.disabled=ture;
-
修改样式属性:属性采用驼峰命名法(div.style.bgcColor=‘red’)这里注意驼峰名,属性值用引号。并且其修改后的权重为行内style。
-
.循环精灵图:方法:先获取所有的li,然后for循环遍历,接着让索引号乘以图片之间的距离返回给一个新的变量,最后利用style更改背景样式,注意所赋值要用引引++;(为什么要用yy++,因为返回值都要加引号,且新变量加了引号为字符串,不是一个变量了)
-
className:利用style更改多个属性繁琐,所以出现className,其根本是给标签添加一个class,这样就可以在css中写完,直接在js中引用,如果原标签有一个class,那就要在添加过程中(this.className=‘firest second’)把原类名也要加入中间加个空格,否则会覆盖掉原来的class。
12. 注意在表单input中改变里面的内容只能用value,不能用innerHTML。仅限表单input标签。 -
排他算法:顾名思义,把其他样式全干掉,只保留自己的。要用到双重for循环,首先获取元素,注意这里获得为伪数组,接着利用for循环进行遍历,再利用for循环把其他属性干掉,然后保留自己。
-
节点1.节点类型、名称、节点值。
-
获得父元素节点:parentNode;子元素节点children。子元素里面第几个ul.children[ul.children.length-1];
-
创建节点,添加节点:三种创建元素的区别:document.write()会造成文档流重绘 2. innerHTML用数组形式拼接然后用JOIN转回字符串,结构复杂运行最快。 3. createElement()结构清晰,效率稍慢。
-
- 阻止链接跳转,href=javascript:;
-
增:1. appendChild 后添加2. inserBefore前添加
-
删除节点removeChild
-
改:主要修改dom的属性,元素内容,属性,表单等。拿到就获取,修改就直接赋值。
-
查:dom提供api:getElementById、不建议使用等。 2. h5新方法:querySelector、querySelectorAll。提倡,。3.利用节点操作:父(parentNode),子(children)、兄(previousElenmentString、nextElenmentString)、提倡
-
属性操作:自定义属性:setAttribute:设置dom的属性值 2. getAttribute:得到dom的属性值, 3. removeAttribute:移除属性
-
数件处理(监听器)方法addEventListener(事件类型要加引号,监听函数 )普通事件绑定后面会覆盖前面,监听绑定可以一次执行。
-
解绑事件:null ,removeEventListener(事件类型,函数名)这里函数要单独写出来
-
dom事件流:扔石头进水:到水底过程为捕获阶段,到底为目标阶段,冒气泡为冒泡阶段。
-
事件对象:就是在函数里面形参为e,
-
事件属性:e.target点哪个就返回那个,this返回绑定的元素
-
阻止冒泡:e。stopPropagation()
-
事件委托(代理,委派):原理给父节点设置监听,不设置子节点。利用冒泡影响子节点
-
点击切换两个图片:只需添加一个变量设置1,然后用if ,else if判断。
-
类似于点击设置背景图,核心是img里面的src等于图片的this.href.
-
定义的全局变量都属于window的属性,如果用关键字或者保留字定义,会出现一些问题,如name=123,显示123为字符串
-
倒计时设置为匿名函数是因为可以提前执行,防止刷新页面卡顿。
我的DOM BOM待续
最新推荐文章于 2021-06-25 13:30:05 发布