1、认识BOM

js

三个部分:

1、ECMAScript标准 ECMA5 ECMA6

2、BOM Browser Object Model 浏览器对象模型

3、DOM 文档对象类型

window对象下的函数。

alert()

格式:window.alert(参数)

功能:弹出一个警告框,并显示,传入的内容

【注】所有window开头的函数,都可以省略window调用。

window.alert(123);

confirm

格式:window.confirm(参数)

功能:弹出一个带确定和取消的提示框

返回值:点击确定,返回true,点击取消,返回false

            /*var res = confirm("我美么?");
alert(res);*/
prompt

格式:window.prompt(参数)

参数:第一个参数,面板上显示的内容,第二个参数,输入框默认值

功能:这是一个带输入框的提示框

返回值:当点击确定,返回,输入的内容。当点击取消,返回null。

            /*var res = prompt("请输入一个数", 10)
console.log(res);*/

2、open与opener

window.open("https://www.baidu.com", "百度", "width=400,height=400,top=200,left=200");

三个参数

第一个参数:打开的网站的url

第二个参数:打开的新窗口起个名字(仅仅是起个名字,看不到这个名字)

第三个参数:一串特殊意义字符串。

opener

【注】打开当前窗口的父窗口

    <body>
<button onclick = "btnClick();">打开一个新窗口</button>
</body>
<script>
var i = 0;
function btnClick(){
/*
三个参数
第一个参数:打开的网站的url
第二个参数:打开的新窗口起个名字(仅仅是起个名字,看不到这个名字)
第三个参数:一串特殊意义字符串。
*/ window.open("https://www.baidu.com", "百度", "width=400,height=400,top=200,left=200"); /*while(i < 10){
var str = "width=400,height=400,top=" + (200 + 10 * i) + ",left=" + (200 + 10 * i);
window.open("https://www.baidu.com", "百度" + i, str);
i++;
}*/ }
</script>
父窗口:
    <style>
body{
background-color: yellow
}
</style>
</head>
<body>
<h1>这里是父窗口</h1>
<button onclick = "btnClick();">打开子窗口</button>
</body>
<script>
function btnClick(){
open("sub.html", "sub", "width=400,height=400,top=200,left=200");
}
</script>
子窗口
    <style>
body{
background-color: blue;
}
</style>
</head>
<body>
<h1>这里是子窗口</h1>
<button onclick = "btnClick();">按钮</button>
</body>
<script> /*
chome不支持
*/ function btnClick(){
// opener 打开当前窗口的父窗口的window对象
// alert(opener);
opener.document.write("我是子窗口");
}
</script>

3、history

window开头的属性也可以省略window

            /*alert(window.history);
alert(history);*/
history对象

属性:history.length 当前窗口历史记录中的条数

history.back() 返回上一条记录
history.forward() 前进到下一条记录
history.go();
				传参: 0  刷新
正数 前进该条数的记录
负数 返回该条数的记录
            // alert(history.length);

			function btnBack(){
history.forward();
}
function btnForWard(){
history.back();
}
function btnGo(){
history.go(-2);
}
</script>
</head>
<body>
<button onclick = "btnBack();">前进</button>
<button onclick = "btnForWard();">后退</button>
<button onclick = "btnGo();">GO</button>
</body>

4、location

// alert(window.location === window.document.location);

【注】上述,无论通过任何方式访问到location对象都是同一个。

location对象的属性

location 对象 窗口上的地址栏

url 统一资源定位符。 快递单

完整的url的格式:

https://www.baidu.com:8080/news?today=11&page=1#1

协议://主机名:端口号/路径?查询字符串#锚点

protocol 协议
		http://tianyufei.local/qwer/13location.html
*/ // alert(location.protocol);
hostname
                www.baidu.com    域名  是为了好记给IP起的别名
61.135.169.125 IP 全球范围内你使用的网络,唯一的标识。 port 端口号 当前电脑的软件在使用软件的时候,会随机分配一个端口号。
浏览器端口号:8080
FTP:2020 // alert(location.hostname); // alert(location.port); // alert(location.host);
IP:端口号
pathname 路径名
		// alert(location.pathname);
search 查询字符串
			?username=tian&password=123     

		// alert(location.search);
hash 锚点 #100
		alert(location.hash);

location 方法

    <head>
<meta charset="UTF-8">
<title>Document</title>
<script>
function btnClick(){
// location.assign("https://www.baidu.com");
// location.replace("https://www.baidu.com");

可以传参,可以传true进行。

如果你传true,代表的是不经过缓存,直接从服务器重载。

                location.reload(true);
}

location.assign() 跳转

【注】在本窗口中加载页面,并且会产生历史记录。

location.replace() 替换

【注】在本窗口中加载页面,不会产生历史记录。

location.reload() 重载

        </script>
</head>
<body>
<button onclick = "btnClick();">百度</button>
</body>

5、延时器

var ID = setTimeout(函数名, 毫秒数)

参数:1、函数名

   2、毫秒数

返回值:该延时器的ID

【注】延迟对应毫秒数以后去执行一次函数,有且仅执行一次。

clearTimeout(ID)

功能:清除延时器。

    <head>
<meta charset="UTF-8">
<title>Document</title>
<script>
/*
var ID = setTimeout(函数名, 毫秒数)
参数:1、函数名
2、毫秒数
返回值:该延时器的ID 【注】延迟对应毫秒数以后去执行一次函数,有且仅执行一次。 clearTimeout(ID)
功能:清除延时器。
*/
var ID = setTimeout(function(){
alert("五秒到了");
}, 5000); function btnClick(){
clearTimeout(ID);
}
</script>
</head>
<body>
<button onclick = "btnClick();">取消掉</button>
</body>

6、进度条

    <head>
<meta charset="UTF-8">
<title>Document</title>
<style>
#progress{
width: 600px;
height: 35px;
border: 1px solid black;
margin: 100px auto;
position: relative;
}
#fill{
position: absolute;
width: 0px;
background-color: red;
height: 35px;
left: 0px;
top: 0px;
line-height: 35px;
}
#num{
position: absolute;
right: 0;
color: white;
font-size: 18px
}
</style>
</head>
<body>
<div id = "progress">
<div id = "fill" >
<span id = "num">0%</span>
</div>
</div>
</body>
<script>
var oProgress = document.getElementById("progress");
var oFill = document.getElementById("fill");
var oNum = document.getElementById("num");
var i = 0; //当前的宽
/*
人眼能识别的最小的间隔是18帧,电影院里面放的电影是24帧。
*/
var ID = setInterval(function(){
i = i + 5;
oFill.style.width = i + "px"; //修改百分比
oNum.innerHTML = parseInt((i / 600) * 100) + "%";
if(i == 600){
clearInterval(ID);
}
}, 30);
</script>

9、BOM (浏览器对象模型)的更多相关文章

  1. 第一百一十一节,JavaScript,BOM浏览器对象模型

    JavaScript,BOM浏览器对象模型 学习要点: 1.window对象 2.location对象 3.history对象 BOM也叫浏览器对象模型,它提供了很多对象,用于访问浏览器的功能.BOM ...

  2. JavaScript——BOM(浏览器对象模型),时间间隔和暂停

    BOM(浏览器对象模型):能够对浏览器的窗体进行訪问和操作 1.主要的BOM体系: window------------document-------------------------------- ...

  3. BOM浏览器对象模型

    访问和操作浏览器窗口的模型称为浏览器对象模型BOM(Browser Object Model). BOM整体对象图. 核心是window对象: 以下有特殊双重身份: window对象既是ECMAScr ...

  4. javascript之BOM浏览器对象模型引入

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. JavaScript(二、BOM 浏览器对象模型)

    一.BOM是什么 BOM是browser object model的缩写,简称浏览器对象模型 BOM提供了独立于内容而与浏览器窗口进行交互的对象 由于BOM主要用于管理窗口与窗口之间的通讯,因此其核心 ...

  6. BOM—浏览器对象模型(Browser Object Model)

     1,javascript   组成部分: 1.ECMAscript(核心标准):    定义了基本的语法,比如:if for 数组 字符串 ... 2.BOM  : 浏览器对象模型(Browser ...

  7. JS第三部分--BOM浏览器对象模型

    一.client系列:宽高边框 二.offset系列:偏移 三.scroll系列 四.BOM的介绍 4.1.打开新窗口 4.2.location对象(本地信息对象) 4.3.history对象 4.4 ...

  8. js BOM浏览器对象模型

    BOM即Browser Object Model,浏览器对象模型,表示浏览器窗口,所有js全局对象.函数以及变量均是window 对象的成员. 对于不同的浏览器,表示宽度和高度的方法不同: 对于IE9 ...

  9. JavaScirpt(JS)——BOM浏览器对象模型

    一.BOM概念 BOM(Browser Object Model)即浏览器对象模型.可以对浏览器窗口进行访问和操作.使用 BOM,开发者可以移动窗口.改变状态栏中的文本以及执行其他与页面内容不直接相关 ...

  10. BOM——浏览器对象模型(Browser Object Model)

    什么是BOM? BOM是Browser Object Model的缩写,简称浏览器对象模型 BOM提供了独立于内容而与浏览器窗口进行交互的对象 由于BOM主要用于管理窗口与窗口之间的通讯,因此其核心对 ...

随机推荐

  1. JSOUP 超时分析与处理

    JSOUP 超时分析与处理 下面说说超时的发现,有可能出现超时的原因,以及超时处理. 1.请求头信息得一致 当你捕获到一个采用JSOUP 去请求超时的链接,我是通过catch 去发现. try{ do ...

  2. Javascript 字符串(一)常见函数使用

    一.js字符串示例1 <script type="text/javascript"> var strobject = new String('123abc123abc' ...

  3. 图解Windows下 GIT GUI 使用教程

    https://jingyan.baidu.com/article/19020a0a7ae6af529c284248.html 本篇经验将和大家介绍Windows下 GIT GUI 使用教程,希望对大 ...

  4. [Python设计模式] 第13章 造小人——建造者模式

    github地址:https://github.com/cheesezh/python_design_patterns 题目1 用程序模拟一个画小人的过程,要求小人要有头,身子,左手,右手,左脚,右脚 ...

  5. SpringBoot之整合Redis分析和实现-基于Spring Boot2.0.2版本

    背景介绍 公司最近的新项目在进行技术框架升级,基于的Spring Boot的版本是2.0.2,整合Redis数据库.网上基于2.X版本的整个Redis少之又少,中间踩了不少坑,特此把整合过程记录,以供 ...

  6. 物联网全景动态图谱2.0|PaaS物联网平台汇总(上篇)

    物联网智库 原创 物联网智库 整理发布 转载请注明来源和出处 ------   [导读]   ------ 毫无疑问,2018年物联网对行业的深度变革才刚刚开启. 物联网产业链企业的质与量将进入全面爆 ...

  7. Java JDK下载、安装与环境变量配置

    https://blog.csdn.net/siwuxie095/article/details/53386227 https://blog.csdn.net/liudongdong19/articl ...

  8. idea 下 encodings.xml 的正确位置

    在多个module存在的情况下 encodings.xml在 project 下的.idea 下面         这个就是最父级project

  9. 【iCore4 双核心板_ARM】例程三十二:UART_IAP_ARM实验——更新升级STM32

    实验现象及操作说明: 1.本例程共有两个代码包,APP和IAP,IAP程序功能实现将APP程序升级至STM32中. 2.直接上电或烧写程序将执行升级的APP应用程序. BIN升级文件产生方法: 1.编 ...

  10. bash python获取文本中每个字符出现的次数

    bash: grep -o . myfile | sort |uniq -c python:  使用collections模块 import pprint import collections f = ...