BOM               


Screen对象

console.log(window.width);//屏幕宽度
console.log(window.height);//屏幕高度
console.log(window.availWidth);//屏幕可用宽度
console.log(window.availHeight);//屏幕可用宽度


★  location对象

取到浏览器的URL地址信息:
完整的URL路径:
协议名://主机名(IP地址):端口号/文件所在路径?传递参数(name1=value1&name2=value2)#锚点
例如:
http://127.0.0.1:8080/wenjianjia/index.html?name=jredu#top

console.log(location.href);    //返回当前完整路径
console.log(location.protocol);    //返回协议名
console.log(location.host);    //返回主机名+端口号
console.log(location.hostname);    //返回主机名
console.log(location.port);    //返回端口号
console.log(location.pathname);    //返回文件路径
console.log(location.port);    //返回端口号
console.log(location.search);    //返回开头的参数列表
console.log(location.hash);   //返回#开头的锚点

 使用JS跳转页面:
location = "http://www.baidu.com";

其他使用location提供的方法跳转页面的方式
location.assign("http://www.baidu.com");
location.replace("http://www.baidu.com");
location.reload("http://www.baidu.com");

function assign(){
//加载新的文档,加载以后,可以回退
location.assign("http://www.baidu.com");
}

function replace(){
//使用新文档替换当前文档,替换以后,不能回退
location.replace("http://www.baidu.com");
}

function reload(){
重新加载当前文档,刷新页面
reload():在本地刷新当前页面,相当于F5
reload():强制刷新,从服务器端重新加载页面,相当于ctrl+F5强制刷新页面
location.reload();
}

/*
history 浏览历史
1、
console.log(history);
console.log(history.length);   //表示浏览历史个数

function back(){
history.back();  后退按钮
}
function forward(){
history.forward();  前进按钮
}
function go(){
跳转到浏览历史的任意一个页面:
0表示当前页面,-1表示后一页(back),1表示前一页(forward)
}

navigator 了解即可
包含浏览器的各种系统信息。

console.log(navigator);

检测浏览器安装的各种插件。

console.log(navigator.plugins);

Window对象的常用方法
在window对象中的所有方法和属性,均可以省略window关键字。
window.alert(); 》弹窗
1.alert():弹出一个警告提示框;
2.prompt():弹出接受用户的输入;
3.confirm():弹出带有“确定”“取消”按钮的对话框,点击按钮返回
4.close():关闭当前浏览器窗口。在个别浏览器中,只能关闭再当前脚本新打开的页面
(使用超链接、window.open()等方式打开)
5.open():打开一个新窗口。
参数一:新窗口的地址;
参数二:新窗口的名字,并没什么用;
参数三:新窗口的各种属性设置,"属性=值1,属性2=值2,属性3=值3"
6.setTimeout: 设置延时执行,只会执行一次;
setInterval: 设置定时器,每隔n毫秒执行一次。
接受两个参数:需要执行的function、毫秒数。
7.clearTimeout:清除延时器
clearInterval:清楚定时器
使用方法:设置延时器或者定时器时。可以使用变量接受定时器ID;
var id =setInterval;
调用clearInterval时,将id传入,即可清除对应的定时器;
clearInterval(id);

    DOM               


【DOM树节点】
DOM树节点分为三大类:元素节点、属性节点、文本节点:
文本节点、属性节点属于元素节点的子节点,操作时,均需要先取到元素节点,在操作子节点。
可以使用getElement系列方法,取到元素节点。

【查看元素节点】

getElementById:通过Id取到唯一节点。如果Id重名,只能取第一个。
getElementsByName() :通过name属性
getElementsByTagName() :通过标签名
getElementsByClassName() :通过class名

获取元素节点时,一定要注意:获取节点的语句,必须在DOM渲染完成之后执行,可以有两种方式实现:
① 将js代码写在body之后;② 将js代码写在window.onload函数中。
后面三个getElements,取到的是数组格式,不能直接添加各种属性,而应该取出数组的每一个单独操作。
例如:getElementsByName("name1")[0].onclick=function


【查看/设置属性节点】
1.查看属性节点:getAttribute("属性名");
2.设置属性节点:setAttribute("属性名","新属性值");
查看和设置属性节点,必须先取到元素节点,才能使用。

eg:

var btn1=document.getElementById("btn1");
btn1.onclick=function(){
  alert(btn1);
}

var input1=document.getElementByname("input");

JS学习四(BOM DOM)的更多相关文章

  1. js学习之BOM和DOM

    1. 浏览器的原理 1.1 浏览器的多线程 (1)  解析js引擎线程 (2)  UI渲染线程 (3)  事件发起线程 (4)  发起请求的线程 (5)  定时器的线程 1.2 同步异步 (1)  前 ...

  2. js学习总结:DOM节点二(dom基本操作)

    一.DOM继承树 DOM——Document Object Model DOM定义了表示修改文档所需要的方法.DOM对象即为宿主对象,由浏览器厂商定义,用来操作html和xml的一类厂商定义,也有人称 ...

  3. js学习总结:DOM节点一(选择器,节点类型)

    DOM:document object model 文档对象模型 DOM就是整个HTML文档的关系图谱(代表整个HTML文档),可以理解为下图: 一.查看元素节点 1.document.getElem ...

  4. js 学习四 对象应用 吃货游戏

    游戏来源于 Mdn学习网站: 该例子用于对象的理解非常有效(建议看完上面网站的内容在开始练习) 弹球 body { margin: 0; overflow: hidden; font-family: ...

  5. js 学习笔记---BOM

    window对象 1. window 对象是Global对象,在全局作用域中声明的变量和函数都可以通过window.来访问.跟直接在window上添加属性效果一样.唯一的区别就是delete时,如果是 ...

  6. js学习笔记--dom部分(一)

    js 学习整理之Dom部分 前面我总结了我最近学习js基础部分,当时提到过js分了三大部分,第一部分ECMA基础也就是第一次写的基础部分, 第二部分也就是DOM部分,也就是这里要写的内容的,然后第三部 ...

  7. js下 Day01、DOM对象,BOM浏览器对象模型

    一.初识DOM 1.什么是DOM?为什么学习DOM 2.DOM是实现js在网页实现交互的关键环节,我们的js代码就是通过DOM的方法来实现对于html内容的操作. 3.认识DOM实现了js和网页结合的 ...

  8. 前端学习 之 JavaScript DOM 与 BOM

    一. DOM介绍 1. 什么是DOM? DOM:文档对象模型.DOM 为文档提供了结构化表示,并定义了如何通过脚本来访问文档结构. 目的其实就是为了能让js操作html元素而制定的一个规范. DOM就 ...

  9. Node.js基础学习四之注册功能

    前言:在Node.js学习(二)和(三)中介绍了如何在Node.js 中获取登录的用户名和密码与数据库进行验证并返回数据给客户端 需求:实现注册功能 为了区分登录和注册是两个不同的请求,在端口后面加上 ...

随机推荐

  1. 编写一个矩形类,私有数据成员为矩形的长( len)和宽(wid),wid设置为0,有参构造函数设置和的值,另外,类还包括矩形的周长、求面积、取矩形的长度、取矩形的长度、取矩形的宽度、修改矩形的长度和宽度为对应的形参值等公用方法。

    class Rectangle { private double len, wid; public Rectangle()//求矩形周长 { len = 0; wid = 0; } public Re ...

  2. vue指令v-pre示例解析

    v-pre会跳过该元素及其子元素的编译过程,显示原始标签. <div id="app"> <span v-pre>{{msg}} 这句不会编译</sp ...

  3. JS数组去重的十种方法

    一.前言: 我们在实际工作中,或者在面试找工作时,都会用到或者被问到一个问题,那就是"数组如何去重".是的,这个问题有很多种解决方案,看看下面的十种方式吧! 二.数组去重方式大汇总 ...

  4. Java中parse()和valueOf(),toString()的区别

    1.parse()是SimpleDateFomat里面的方法,你说的应该是parseInt()或parsefloat()这种方法吧, 顾名思义 比如说parseInt()就是把String类型转化为i ...

  5. iOS tableview group时头尾视图间隔大小

    解决: 一,当使用tableview的格式为group时 1.先设置 tableview.sectionHeaderHeight = 0.00001; tableview.sectionFooterH ...

  6. 前端到后台ThinkPHP开发整站(4)

    今晚继续我的这个项目的开发,今晚也是写的不多,主要写了一个菜单管理功能的CURD方法,前端界面还没有进行编写. 菜单管理Model层的代码: <?php namespace Common\Mod ...

  7. MySQL中的完整性约束

    对于已经创建好的表,虽然字段的数据类型决定所能存储的数据类型,但是表中所存储的数据是否合法并没有检查. MySQL支持的完整性约束: NOT NULL                 约束字段的值不能 ...

  8. elasticsearch映射

    前面讲到,无论是关系型数据库还是非关系型数据库,乃至elasticsearch这种事实上承担着一定储存作用的搜索引擎,数据类型都是非常重要而基础的概念.但elasticsearch与其它承担着数据存储 ...

  9. 一步步学习操作系统(2)——在STM32上实现一个可动态加载kernel的"my-boot"

    如果要做嵌入式Linux,我们首先要在板子上烧写的往往不是kernel,而是u-boot,这时需要烧写工具帮忙.当u-boot烧写成功后,我们就可以用u-boot附带的网络功能来烧写kernel了.每 ...

  10. 使用canvas进行图像编辑

    前面的话 本文将分为几个小功能的形式来详细介绍canvas图像编辑 缩放 下面是一张分析图,假设默认情况下,图片和canvas宽高相同.图片的缩放(scale)范围为0.5到3,缩放时改变的是图片的大 ...