BOM部分主要是针对浏览器的内容,其中常用的就是window对象和location,

  window是全局对象很多关于浏览器的脚本设置都是通过它。

  location则是与地址栏内容相关,比如想要跳转到某个页面,或者通过URL获取一定的内容。

  navigator中有很多浏览器相关的内容,通常判断浏览器类型都是通过这个对象。

  screen常常用来判断屏幕的高度宽度等。

  history不太常用,一般应该不会有写关于历史记录的脚本。

其中比较常用的内容就是:

  如何判断各种版本的浏览器

导图

navigator

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<script type="text/javascript">
console.log("浏览器名称");
console.log(navigator.appCodeName);
console.log("次版本信息");
console.log(navigator.appMinorVersion);
console.log("完整的浏览器名称");
console.log(navigator.appName);
console.log("浏览器版本");
console.log(navigator.appVersion);
console.log("浏览器编译版本");
console.log(navigator.buildID);
console.log("是否启用cookie");
console.log(navigator.cookieEnabled);
console.log("客户端计算机CPU类型");
console.log(navigator.cpuClass);
console.log("浏览器是否启用java");
console.log(navigator.javaEnabled());
console.log("浏览器主语言");
console.log(navigator.language);
console.log("浏览器中注册的MIME类型数组");
console.log(navigator.mimeTypes);
console.log("是否连接到网络");
console.log(navigator.onLine);
console.log("客户端计算机操作系统或者CPU");
console.log(navigator.oscpu);
console.log("浏览器所在的系统平台");
console.log(navigator.platform);
console.log("浏览器中插件信息数组");
console.log(navigator.plugins);
console.log("用户的首选项");
// console.log(navigator.preference());
console.log("产品名称");
console.log(navigator.product);
console.log("产品的次要信息");
console.log(navigator.productSub);
console.log("操作系统的语言");
console.log(navigator.systemLanguage);
console.log("浏览器的用户代理字符串");
console.log(navigator. userAgent);
console.log("操作系统默认语言");
console.log(navigator.userLanguage);
console.log("用户个人信息对象");
console.log(navigator.userProfile);
console.log("浏览器品牌");
console.log(navigator.vendor);
console.log("浏览器供应商次要信息");
console.log(navigator.vendorSub);
</script>
</body>
</html>

chrome浏览器

IE浏览器

JS BOM知识整理的更多相关文章

  1. js基础知识整理

    一.javaScript,也称之为js,是专为网页交互设计的脚本语言.主要由以下三部分组成: 1)ECMAScript  由ECMA-262定义,提供核心语言功能. 2)DOM对象(document ...

  2. js部分知识整理,google浏览器的代码调试

    整理一些学过的js知识点,包括js中3个括号的含义,this的使用,递归,google浏览器的代码调试.Location的属性及常用方法,window对象常用方法,open方法等. js括号 在js中 ...

  3. js 相关知识整理(一)

    真正声明变量,是用逗号隔开的 EcM5:严格模式“use strict” java与js 语言的区别: 1.弱类型语言 1.声明变量时不需要提前指定数据类型 2.同一个变量可先后保存不同类型的数据 3 ...

  4. Node.js入门-知识整理

    目的:使用Node.js实现文件上传并将上传的文件显示到浏览器中 基本工具:Node.js,在windows下需要下载cygwin64来运行shell命令 文件:服务器模块.请求路由模块.请求处理程序 ...

  5. 个人JS零碎知识整理

    1."DOM2级事件"规范要求的事件流包括三个阶段:事件捕获阶段.处于目标阶段.事件冒泡阶段 2.isNaN()       数字.空串.空格 返回false 变量是数字时返回fa ...

  6. js事件知识整理

    鼠标事件 鼠标移动到目标元素上的那一刻,首先触发mouseover 之后如果光标继续在元素上移动,则不断触发mousemove 如果按下鼠标上的设备(左键,右键,滚轮……),则触发mousedown ...

  7. BOM知识整理

    1.窗口位置: 1-1.window,screenLeft获取窗口距离屏幕左边的距离 1-2.window.screenTop获取窗口距离屏幕顶端的距离 1-3.window.screenX和wind ...

  8. js事件(Event)知识整理

    事件(Event)知识整理,本文由网上资料整理而来,需要的朋友可以参考下   鼠标事件 鼠标移动到目标元素上的那一刻,首先触发mouseover 之后如果光标继续在元素上移动,则不断触发mousemo ...

  9. js事件(Event)知识整理[转]

    事件注册 平常我们绑定事件的时候用dom.onxxxx=function(){}的形式 这种方式是给元素的onxxxx属性赋值,只能绑定有一个处理句柄. 但很多时候我们需要绑定多个处理句柄到一个事件上 ...

随机推荐

  1. linux 删除已输入的命令行

    ctrl + w —往前删除一个单词,光标放在最末尾ctrl + k —删除到末尾,光标放在最前面(可以使用ctrl+a) —————————————————————-华丽的分割线ctl + u 删除 ...

  2. OpenStack neutron删除网络设备出错解决办法

    目标:要删除外网Ext-Net2 直接删网络也会出错:因为有一个或多个端口在使用该网络 root@controller:~# neutron net-list +------------------- ...

  3. 分享十个JavaScript在线调试工具

    测试Javascript可能是网页开发中最让人忧伤的工作.这里我找一些比较好的工具来帮助大家进行测试工作.这10款是我精选的基于浏览器的JavaScript在线调试工具,希望你们对你们有用. 1.Op ...

  4. HDU 2955 Robberies --01背包变形

    这题有些巧妙,看了别人的题解才知道做的. 因为按常规思路的话,背包容量为浮点数,,不好存储,且不能直接相加,所以换一种思路,将背包容量与价值互换,即令各银行总值为背包容量,逃跑概率(1-P)为价值,即 ...

  5. POJ 3481Double Queue Splay

    #include<stdio.h> #include<string.h> ; ],data[N],id[N],fa[N],size,root; void Rotate(int ...

  6. Java虚拟机工作原理详解 (一)

    一.类加载器 首先来看一下java程序的执行过程. 从这个框图很容易大体上了解java程序工作原理.首先,你写好java代码,保存到硬盘当中.然后你在命令行中输入 javac YourClassNam ...

  7. Android service ( 一 ) 三种开启服务方法

    一. Service简介 Service是android 系统中的四大组件之一(Activity.Service.BroadcastReceiver.ContentProvider),它跟 Activ ...

  8. Javascript 中的 in, hasOwnProperty, delete, for/in

    in 运算符 判断对象是否拥有某一属性只要对象拥有该属性,就会返回true,否则false var point = { x:1, y:1 };alert( 'x' in point );  //tru ...

  9. Protocol Buffer多态

    java中有多态的概念,protobuf本身没有多态的概念,但是它有一个扩展的概念. 以聊天消息为例,先看下面这个类图,基类是ChatMessage,子类TextMessage和ImageMessag ...

  10. 卫星轨道和两行数据TLE

    最近由于Sino-2和北斗的关系,很多网友贴了表示卫星运行轨道的TLE数据.这里想对卫星轨道参数和TLE的格式做一个简单介绍.虽然实际上没有人直接读TLE数据,而都是借助软件来获得卫星轨道和位置信息, ...