一、BOM

  1、概念:Browser Object Model  浏览器对象模型

    *  将浏览器的各个组成部分封装成对象

  2、组成:

    *  Window:窗口对象

                  1、创建
                  2、方法
                  3、属性
                  4、特点
                      * Window对象不需要创建可以直接使用 window使用,window.方法名();
                      * window引用可以省略。 方法名()

    *  Navigator:浏览器对象

       *  Screen:显示器屏幕对象

    *  History:历史记录对象

    *  Location:地址栏对象

  3、Window对象

       1、创建
                  2、方法  
              1、与弹出框有关的方法
alert(): 显示带一段信息和一个确认按钮的警告框
confirm() 显示带有一段信息以及确认按钮和取消按钮的对话框
* 如果用户点击确定按钮,则方法返回true
* 如果用户点击取消按钮,则方法返回false
prompt() 显示可提示用户输入的对话框
*返回值:获取用户输入的值
2、与打开关闭有关的方法:
close():关闭浏览器窗口
* 谁调用close,就关谁
open():打开一个新的浏览器窗口
* 返回一个新的window对象
3、与定时器有关的方式
setTimeout() 在指定的毫秒数后调用函数或计算表达式
* 参数:
1、js代码或者方法对象
2、毫秒值
* 返回值:唯一标识,用于取消定时器
clearTimeout() 取消有setTimeout() 方法设置的 timeout setInterval() 按照指定的周期(以毫秒计)来调用函数或计算表达式
clearInterval() 取消由 setInterval() 设置的 timeout
                  3、属性
        1、获取其他BOM对象:
                              history
                              localtion
                              Navigator
                              Screen
                           2、获取DOM对象
                              document
                  4、特点
                        * Window对象不需要创建可以直接使用 window使用,window.方法名();
                        * window引用可以省略。 方法名()
        //1、alert
alert("666")
window.alert("555") //2、confirm
var flag = confirm("确定推出吗??")
alert(flag)
if(flag){
//退出
alert('欢迎下次再次登录')
}else{
//提示
alert('手别抖')
} //输入框
//3、prompt
var result = prompt('请输入用户名');
alert(result)
            //open
//打开一个新窗口
var openBtn = document.getElementById("openBtn");
var newWindow;
openBtn.onclick = function(){
newWindow = open("http://www.baidu.com");
} //关闭一个新窗口
//close
var closeBtn = document.getElementById("closeBtn");
closeBtn.onclick = function(){
newWindow.close();
}
            // 一次性定时器
setTimeout("fun()",3000);
var id = setTimeout(fun,3000);
// 取消定时器
clearTimeout(id);
function fun(){
alert('bbb~')
} // 循环定时器
var id = setInterval(fun,2000)
// 取消循环定时器
clearInterval(id)
         // 获取history
var h1 = window.history;
var h2 = history;
alert(h1)
alert(h2) var openBtn = window.document.getElementById("openBtn");
alert(openBtn);
// document.getElementById("")

  4、Location:地址栏对象

    1、创建(获取):

      1、window.location

      2、location

    2、方法:

      * reload()  重新加载当前文档,刷新

    3、属性:

      * href  设置或返回完整的URL

   <input type="button" id="btn" value="刷新">
<input type="button" id="goflypig" value="flypig"> <script>
// reload方法,定义一个按钮,点击按钮,刷新当前页面
//1.获取按钮
var btn = document.getElementById("btn");
//2.绑定单击事件
btn.onclick = function(){
//3.刷新页面
location.reload();
} // 获取href
var href = location.href;
alert(href) //1.获取按钮
var goflypig = document.getElementById("goflypig");
//2.绑定单击事件
goflypig.onclick = function(){
//3.访问flypig
location.href = "https://www.flypig666.cn";
}
</script>

  5、History:历史记录对象

    1、创建(获取):

      1、windows.history

      2、history

    2、方法:

      * back()   加载history 列表中的前一个 URL

      * forward()  加载history  列表中的下一个 URL

      * go(参数)    加载history 列表中的某个具体页面

        * 参数

          * 正数:前进几个历史记录

          * 负数:后退几个历史记录

    3、属性:

      * length  返回当前窗口历史列表中的 URL 数量

    <input type="button" id="btn" value="获取历史记录个数">
<a href="History_1.html">history1</a>
<input type="button" id="forward" value="前进"> <script> //一、
//1、获取按钮
var btn = document.getElementById("btn")
//2、绑定单击事件
btn.onclick = function(){
//3、获取当前窗口历史记录个数
var length = history.length;
alert(length)
} //二、
//1、获取按钮
var forward = document.getElementById("forward")
//2、绑定单击事件
forward.onclick = function(){
// history.forward();
history.go(+1)
}
</script>

javascript基础:bom的更多相关文章

  1. JavaScript基础 -- BOM

    JavaScript三大核心: 1)核心(ECMAScript):描述了JS的语法和基本对象 2)文档对象模型(DOM):处理网页内容的方法和接口 3)浏览器对象模型(BOM):与浏览器交互的方法和接 ...

  2. 从零开始学习前端JAVASCRIPT — 5、JavaScript基础BOM

    1:BOM(Browser  Object  Model)概念 window对象是BOM中所有对象的核心. 2:window属性(较少用) self:self代表自己,相当于window. windo ...

  3. javascript基础-BOM原理

    图解:  1. Loction: 拼接参数时,应编码decodeURIComponent/encodeURIComponent(). 2. History: pushState+replaceStat ...

  4. JavaScript基础:BOM的常见内置方法和内置对象

    本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. BOM的介绍 JavaScript的组成 JavaScript基础分为三 ...

  5. JavaScript 基础知识 - BOM篇

    前言 本篇文章是JavaScript基础知识的BOM篇,如果前面的<JavaScript基础知识-DOM篇>看完了,现在就可以学习BOM了. 注意: 所有的案例都在这里链接: 提取密码密码 ...

  6. 一步步学习javascript基础篇(0):开篇索引

    索引: 一步步学习javascript基础篇(1):基本概念 一步步学习javascript基础篇(2):作用域和作用域链 一步步学习javascript基础篇(3):Object.Function等 ...

  7. 前端之JavaScript基础

    前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript历史 1992年Nombas开发出C ...

  8. javascript基础01

    javascript基础01 Javascript能做些什么? 给予页面灵魂,让页面可以动起来,包括动态的数据,动态的标签,动态的样式等等. 如实现到轮播图.拖拽.放大镜等,而动态的数据就好比不像没有 ...

  9. javascript基础语法——词法结构

    × 目录 [1]java [2]定义 [3]大小写[4]保留字[5]注释[6]空白[7]分号 前面的话 javascript是一门简单的语言,也是一门复杂的语言.说它简单,是因为学会使用它只需片刻功夫 ...

  10. javascript基础系列(入门前须知)

    -----------------------小历史---------------------------- javascript与java是两种语言,他们的创作公司不同,JavaScript当时是借 ...

随机推荐

  1. Spring Boot 发布 jar 包转为 war 包秘籍。

    Spring Boot是支持发布jar包和war的,但它推荐的是使用jar形式发布.使用jar包比较方便,但如果是频繁修改更新的项目,需要打补丁包,那这么大的jar包上传都是问题.所以,jar包不一定 ...

  2. USACO 2009 Open Grazing2 /// DP+滚动数组oj26223

    题目大意: 输入n,s:n头牛 s个栅栏 输入n头牛的初始位置 改变他们的位置,满足 1.第一头与最后一头的距离尽量大 2.相邻两头牛之间的距离尽量满足 d=(s-1)/(n-1),偏差不超过1 3. ...

  3. Walk Through Squares HDU - 4758 AC自动机+简单状压DP

    题意:给你两个串,求用m个R,n个D能组成多少个包含这两个串 题解:先构造一个AC自动机记录每个状态包含两个串的状态, 状态很容易定义 dp[i][j][k][status]表示在AC自动机K这个节点 ...

  4. gdb调试工具的使用

    GDB是一个由GNU开源组织发布的.UNIX/LINUX操作系统下的.基于命令行的.功能强大的程序调试工具. GDB中的命令固然很多,但我们只需掌握其中十个左右的命令,就大致可以完成日常的基本的程序调 ...

  5. leetccode-130-被围绕的区域

    题目描述: 方法一:dfs class Solution: def solve(self, board: List[List[str]]) -> None: """ ...

  6. Spring Boot 整合 ActiveMQ

    依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spri ...

  7. poj 3660 Cow Contest (bitset+floyd传递闭包)

    传送门 解题思路 考试题,想到传递闭包了,写了个O(n^3)的,T了7个点...后来看题解是tm的bitset优化???以前好像没听过诶(我太菜了),其实也不难,时间复杂度O(n^3/32) #inc ...

  8. 「BZOJ2388」旅行规划

    传送门 分块+凸包 求出前缀和数组s 对于l~r加上k,相当于s[l]~s[r]加上一个首项为k,公差为k的等差数列.r~n加上k*(r-l+1). 分块之后对每一块维护两个标记,一个记录它加的等差数 ...

  9. date函数

  10. maven 工程搭建

    使用Maven建立一个Quite start 项目 2.命名卫 bhz-parent 3.groupid 为:  bhz 4.artifactId 为: bhz-parent package:为空不填 ...