JavaScript之浏览器及浏览器对象

一、浏览器分类:

        1、IE 6~11:国内用得最多的IE浏览器,历来对W3C标准支持差。从IE10开始支持ES6标准;

        2、Chrome:Google出品的基于Webkit内核浏览器,内置了非常强悍的JavaScript引擎——V8。由于Chrome一经安装就时刻保持自升级,所以不用管它的版本,最新版早就支持ES6了;

        3、Safari:Apple的Mac系统自带的基于Webkit内核的浏览器,从OS X 10.7 Lion自带的6.1版本开始支持ES6,目前最新的OS X 10.11 El Capitan自带的Safari版本是9.x,早已支持ES6;

        4、Firefox:Mozilla自己研制的Gecko内核和JavaScript引擎OdinMonkey。早期的Firefox按版本发布,后来终于聪明地学习Chrome的做法进行自升级,时刻保持最新;

        5、移动设备上的浏览器:目前iOS和Android两大阵营分别主要使用Apple的Safari和Google的Chrome,由于两者都是Webkit核心,结果HTML5首先在手机上全面普及(桌面绝对是Microsoft拖了后腿),对JavaScript的标准支持也很好,最新版本均支持ES6。

        6、其他浏览器:由于市场份额太小用户太少详细了解请自行百度。还有些国产浏览器,如某某安全浏览器,某某旋风浏览器,它们只是做了一个壳,其核心调用的是IE,也有号称同时支持IE和Webkit的“双核”浏览器。

二、浏览器对象:

        1、window:

                ①表示全局作用域:如果想访问全局变量,可以使用window.xxx进行访问,也可以直接使用window访问所有全局变量;

                ②表示浏览器窗口对象:该对象的innerWidth和innerHeight属性,可以获取浏览器窗口的内部宽度和高度。内部宽高是指除去菜单栏、工具栏、边框等占位元素后,用于显示网页的净宽高。对应的还有outerWidth和outerHeight属性,可以获取浏览器窗口的整个宽高。

        2、navigator:表示浏览器的信息,最常用的属性包括:

                ①appName:浏览器名称;

                ②appVersion:浏览器版本;

                ③language:浏览器设置的语言;

                ④platform:操作系统类型;

                ⑤userAgent:浏览器设定的User-Agent字符串。

        3、screen:表示屏幕的信息,最常用的属性包括:

                ①width:屏幕宽度,以像素为单位;

                ②height:屏幕高度,以像素为单位;

                ③colorDepth:返回颜色位数,如8、16、24。

        4、location:表示当前页面的URL信息,最常用的属性和方法包括:

                ①protocol:URL的协议;

                ②host:URL的主机(域名)地址;

                ③port:URL的端口;

                ④pathname:URL的pass路径;

                ⑤search:URL的为get请求时的条件字符串;

                ⑥hash:URL的锚部分;

                ⑦assign(url):加载用url指定的新页面;

                ⑧reload():重新加载当前页面。

        5、document:表示当前页面。由于HTML在浏览器中以DOM形式表示为树形结构,document对象就是整个DOM树的根节点。document根节点最常用的属性和方法包括:

                ①title:html中<head><title>...</title></head>之间的内容;

                ②body:html中<body></body>之间的内容;

                ③cookie:当前页面的cookie。因为在HTML页面中可以通过<script src='...'></script>引入第三方的JavaScript代码,而通常用户的登录信息是存在cookie中的,为了防止用户信息被窃取,服务端设置cookie时一般使用httpOnly。

                ④getElementById(id):html中标签的id为指定的id的内容;

                ⑤getElementsByTagName(tagName):html中标签为指定的tagName的内容;

                ⑥getElementsByClassName(className):html中标签的class为指定的className的内容;

                ⑦createElement(tagName):创建一个指定标签的节点。

        其他节点最常用的属性和方法包括:

                ①parentElement:指定节点的父节点;

                ②children:是只读属性,获取指定节点下所有的直属子节点,每次读取都会取最新的数据;

                ③firstElementChild:指定节点下的第一个直属子节点;

                ④lastElementChild:指定节点下的最后一个直属子节点;

                ⑤querySelector(tagName.className)、querySelector(tagName[attribute]):获取指定节点下的具有指定class或指定属性的指定标签名的第一个标签的内容,IE版本必须>=8;

                ⑥querySelectorAll(condition):获取指定节点下所有符合条件的标签的内容,IE版本必须>=8;

                ⑦innerHTML:指定节点中的内容,可以设置html标签放入其中;

                ⑧innerText:指定节点中的文本内容,只可以设置或显示不是隐藏属性的文本,设置的html标签会转译成特殊字符串;

                ⑨textContent:指定节点中的文本内容,可以设置或显示隐藏属性的文本,设置的html标签会转译成特殊字符串,IE版本必须>=9;

                ⑩style.xxx:指定节点中CSS(注意css支持中划线,但在js中需转为驼峰式命名,不支持中划线)

                ⑪appendChild(domNode):将已存在的节点domNode移动到指定节点下的直属的最后一个子节点;

                ⑫insertBefore(newDomNode,oldDomNode):将newDomNode节点插入到指定节点下直属子节点oldDomNode之前。

                ⑬removeChild(domNode):将指定的节点下指定的直属子节点删除;

        6、history:保存着浏览器的历史浏览记录,目前不应该使用history这个对象了,只作了解。最常用的属性包括:

                ①back():用户浏览过的上一个网页;

                ②forward():用户浏览过的下一个网页。

 

参考:https://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/001434499851683f7f8d6b7717343248a75d5e7f930def4000

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值