我们之前学的呢,都是JS的基础部分,也就是ECMA规定的语法,后面我们就要学习BOM和DOM了.
JS基础阶段
Web APIs阶段
JS基础学习ECMAScript基础语法为后面做铺垫,Web APIs是JS的应用,大量使用基础语法做交互效果.
API
(Application Programming Interface)应用程序接口,是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节
简单理解: API是给程序员提供的一种工具,以便能更轻松的实现想要完成的功能.
Web API是浏览器提供的一套操作浏览器功能和页面元素的API(BOM和DOM).现阶段我们主要针对于浏览器讲解常用的API,主要针对浏览器做交互效果.
DOM
什么是DOM
文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标记语言(HTML或者XML)的标准编程接口
W3C已经定义了一系列的DOM接口,通过这个DOM接口可以改变网页的内容,结构和样式.
DOM树
DOM把以上所有内容都看做是对象.
如何获取页面元素
获取页面元素可以使用以下几种方式:
1.根据ID获取
使用 getElementById( ) 方法可以获取带有ID的元素对象, 参数Id是大小写敏感的字符串, 返回的是一个元素对象.
打印出来的结果,就是我们的timer标签
我们查看一下返回的结果:
现在我们学习一个新的方法console.dir( ),可以返回我们的元素对象,更好的查看对象的属性和方法.
2.根据标签名获取
根据 getElementsByTagName( ) 方法可以返回带有指定标签名的对象的集合.
返回的是伪数组.
我们也可以遍历这5个li,使用遍历的方法就可以了.
注意:
假如我们现在有ul,也有ol,但是我们只想要ol里面的li标签,那该怎么办呢?我们可以使用:
elements.getElementsByTagName('标签名')
注意:父元素必须是单个对象,必须指明是哪一个元素对象,获取的时候不包括父元素自己.
注意一定是ol[index],一定要指明是第几个ol,否则会报错
但是在开发中更常用到的方法是给ol指定一个id,因为id是唯一的.
根据HTML5获取
document.getElementsByClassName('类名') : 根据类名返回元素对象合集
上面的方法都有些繁琐了,现在有一个更新的方法, document.querySelector() 可以直接帮我们选出选择器,但是只能返回指定选择器的第一个元素对象
这个虽然简便了很多但还是有缺陷的,所以下面就说一个更加完美的.
document.querySelectorAll('选择器')
最后,我们还可以获取比较特殊的body和html标签,因为他们特殊,所以也有特殊的方法去获取.
document.body
但是获取html的方法又不同了
document.documentElement
接下来讲事件基础了