一、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. <Django> 第三方扩展

    1.富文本编辑器 tinymce为例 安装 pip install django-tinymce 在settings.py中的配置 配置应用 INSTALLED_APPS = [ 'django.co ...

  2. NEO4J 图数据库使用APOC数据导入

       Neo4j 数据导入 一.安装与部署 直接在官网下载安装包安装,解压即可. 二.下载相应的jar包 apoc 包下载链接: https://github.com/neo4j-contrib/ne ...

  3. angularJS ng-repeat="item in XXX track by $index"问题记录

    参考:https://blog.csdn.net/lunhui1994_/article/details/80236315 问题:项目中对数据做了分页效果,理想是:当页数大于6时,隐藏>6的页数 ...

  4. 2019-8-2-WPF-依赖属性绑定不上调试方法

    title author date CreateTime categories WPF 依赖属性绑定不上调试方法 lindexi 2019-08-02 19:56:32 +0800 2019-8-2 ...

  5. apache反向代理和监听多个端口设置

    修改apache配置文件httpd.conf 一.监听多个端口 在Listen 80后添加监听端口,如 Listen 80 Listen 8080 Listen 8008 二.反向代理设置 1.取消一 ...

  6. BP 算法之一种直观的解释

    0. 前言 之前上模式识别课程的时候,老师也讲过 MLP 的 BP 算法, 但是 ppt 过得太快,只有一个大概印象.后来课下自己也尝试看了一下 stanford deep learning 的 wi ...

  7. OpenGL键盘交互响应事件

    GLUT允许我们编写程序,在里面加入键盘输入控制,包括了普通键,和其他特殊键(如F1,UP).在这一章里我们将学习如何去检测哪个键被按下,可以从GLUT里得到些什么信息,和如何处理键盘输入.   处理 ...

  8. Serverless Kubernetes全面升级2.0架构:支持多命名空间、RBAC、CRD、PV/PVC等功能

    Serverless Kubernetes概述: 阿里云Serverless Kubernetes容器服务最新开放香港.新加坡.悉尼区域,同时全面开放2.0架构,帮助用户更加便捷.轻松地步入“以应用为 ...

  9. ThinkPHP 读取数据

    在ThinkPHP中读取数据的方式很多,通常分为读取数据.读取数据集和读取字段值. 步进电机和伺服电机 数据查询方法支持的连贯操作方法有: 连贯操作 作用 支持的参数类型 where 用于查询或者更新 ...

  10. Python-面向对象之高级进阶

    目录 classmethod与staticmethod 面向对象高级 isinstance.issubclass 反射 魔法方法(类内置方法) 单例模式 classmethod与staticmetho ...