JavaScrip学习整理(四)--Web API

1.Dom:
一个网页就是一个文档对象;网页上所有的内容都是节点。
2.获取元素对象
在js脚本中才有属性innerHTML,不是标签属性,获取元素内容。
innerText:只能写静态文本,比如innerText="<p>hhh</p>"会显示出来<p>hhh</p>
3.可以修改属性值,如改class、title等等属性值。
应用:可以通过修改class值修改属性值,使样式修改,
两者获取时:从函数的名字可以知道,通过getElementsByClassName获取到的是一个数组,
**(除id,和querySelected()这两个返回一个元素其他的也是这样子,返回一个伪数组)**包括多个DOM元素,所以要执行DOM元素的方法,必须加一个索引,比如document.getElementsByClassName(“class名”)[0]。
而由于id是唯一的,所以通过getElementById只有一个DOM元素,可以直接调用DOM方法。
使用foreach没有不能写break,没有办法中止或者跳出 forEach() 循环,除了抛出一个异常。
由于nodelist()(classname可以使用)和htmlcollection()–(tag不可以使用)两种类型使用提供的方法不同。(console.dir()可以查看)
4.单选框和多选框的值获取
(selected=true选中)
5.默认点击事件的去除

<a href="JavaScript:void(0)"></a>
<a href="JavaScript:selectAll()"></a>
<a>标签中照常写地址,可以在初始化里面注册点击事件,最后写return false;会不进行跳转。

6.表单元素属性
value可以获取绝大多数的表单属性(option除外);
multiple表示下拉菜单可以多选;
分清楚已有属性(查工具书)

  • 自定义属性操作:既可以取得已有属性也可以取得自定义属性。
    getAttribute()、removeAttribute()、setAttribute(),之间写属性和修改的属性值

7.排他性:
先清楚所有的元素一些属性,再重新赋属性和属性值。
应用:可以用于一些点击效果,每次只有这一次点击得到元素产生反应,其他会保持原来的属性,换一个点击也是如此。

8.事件
常用的点击事件:
onchange()->常用于文本框;
onblur()->元素失去焦点
等等,去工具书看。
都可以为元素绑定事件 addEventListener和attachEvent
不同点:

  • 1.方法名不一样
  • 2.参数个数不一样addEventListener三个参数,attachEvent两个参数
  • 3.addEventListener 谷歌,火狐,IE11支持,IE8不支持
  • attachEvent 谷歌火狐不支持,IE11不支持,IE8支持
  • 4.this不同,addEventListener 中的this是当前绑定事件的对象
  • attachEvent中的this是window。(IE8中其实通过apply、call改变了this的指向)
  • 5.addEventListener中事件的类型(事件的名字)没有on
  • attachEvent中的事件的类型(事件的名字)有on

9.特效属性
偏移量:
offsetParent 离当前元素最近的一个有定位属性的父节点的距离 。如果父亲都没有定位,返回body

10. BOM
定时器: js是单线程的
​ 单线程意味着下一段代码必须在当前代码执行完了才能执行。
​ 单线程即任务是串行的,后一个任务需要等待前一个任务的执行,这就可能出现长时间的等待。所以如果setInterval内执行的计算过于耗时,或者有其他耗时任务在行,setInterval的计时会越来越不准,延迟很厉害。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值