JavaScript系列--BOM(二)

简介: JavaScript系列--BOM(二)

二、BOM对象



2.1概念


Browser object Model 浏览器对象模型

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


2.2组成


2.2.1window :窗口对象


(1)实例


<body>
<input id = 'open' type="button" value="打开新窗口">
<input id = 'close' type="button" value="关闭新窗口">
<script>
    /*


windows对象


1.创建


2.方法

         

1.与弹出有关的方法

           

alert() 显示一段消息和一个确认

             

confirm()   显示带有确认和取消的对话框

                 

点击确定返回true

                 

点击取消返回false

             

prompt()    显示可以提示用户输入的对话框

                 

返回值:获取用户输入值

       

2.与打开关闭有关的方法

             

open() 打开窗口

             

close()   关闭窗口,谁调用谁被关

 

3.与定时器有关的方式

           

setTimeout()     在指定的毫秒数后调用函数或计算表达式

                 

参数 :

                     

1.js代码或者方法对象

                   

2.毫秒值

                 

返回值:

                     

唯一标识,用于取消定时器

           

cleanTimeout()    取消由setTimeout()方法设置的timeout

           

setInterval()       按照指定的周期来调用

           

clearInterval()      取消setInterval设置的timeout

 

3.属型

     

获取其他的BOM对象和DOM对象

   

4.特点

         

windows对象不需要创建可以直接使用

         

windows引用可以省略

         

例如我们前面常用的alert,其实就是windows对象中的方法


*/
    var flag = confirm("下面会出现两个按钮,确认和取消");
    if (flag){
        alert("你点了确定");
    }else {
        alert("你点了取消");
    }
    var str = prompt("请输出用户名");
    alert(str);
    获得标签对象
    var ele = document.getElementById("open");
    var newWindow;
    //绑定事件
    ele.onclick = function (){
        newWindow = open("http://www.baidu.com");
    }
    var ele1 = document.getElementById("close");
    ele1.onclick = function (){
        newWindow.close();
    }
    var timeout = setTimeout(fun,2000);
    clearTimeout(timeout);
    function fun(){
        alert("boom~~~");
    }
    var interval = setInterval(fun,2000);
    clearInterval(interval);
    function fun(){
        alert("boom~~~");
    }
    window.document
</script>
</body>


(2)轮播图实例和小bug


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <img id = "img1" src="../img/g1.jpeg" width="100%">
    <script>
        /*轮播图思路
        1.写更改图片的方法
        2.调用更改图片的方法
        3.每3秒
         */
            var num = 1;
            function fun(){
                num ++;
                if (num > 3){
                    num = 1;
                }
                var img = document.getElementById("img1");
                //小bug
                // Uncaught TypeError: Cannot set property 'src' of null
                //原因是document.getElementById("img1")没有获取到元素对象
                img.src = "../img/g"+num+".jpeg";
            }
            setInterval(fun,2000);
    </script>
</body>
</html>


2.2.2Navigator 浏览器对象

不常用

2.2.3screen 显示器屏幕对象

不常用


2.2.4History 历史记录对象

(1)创建(获取)

window.history

history


(2)方法


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


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


go() 加载hisItory 列表中的某个具体页面。


参数:

正数:前进几个历史记录


负数:后退几个历史记录


相当于集成了back和forwork方法


(3)属性


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


(4)实例


<body>
<!--<input id = "forword" type="button" value="前进">-->
<input id = "f" type="button" value="前进">
<a href="轮播图案列.html">后退实例</a>
<script>
    // var f = document.getElementById("forword");
    // f.onclick = function (){
    //     history.forward();
    // }
    var f1 = document.getElementById("f");
    f1.onclick = function (){
        history.go(1);
    }
    // var b = document.getElementById("back");
    // f.onclick = function (){
    //     history.back();
    // }
</script>
</body>


2.2.5Location 地址栏对象


(1)创建

window.location

location


(2)方法

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


(3)自动跳转实例


<style>
    /*
    div这个标签是用来划分区域的,它是个块级元素block
    span标签是个行内元素(行内元素就是在浏览器的一行上)比如span里面的元素不会换到下一行
     */
    p{
        text-align: center;
    }
    span{
        color: #ff0000;
    }
</style>
<body>
    <p>
        <span id = "time">5</span>秒之后,自动跳转到首页
    </p>
<script>
    /*
    分析:
    1.显示页面效果<p>
    2.倒计时读秒效果实现
        2.1定义一个方法,获取span标签,修改span标签体内容,时间--
        2.2定义一个定时器,1秒执行一次该方法
    3.在方法中判断时间如果<= 0,则跳转到首页
     */
    var second = 5;
    function fun(){
        second --;
        if (second <= 0){
            location.href = "http://www.qq.com"
        }
        var time = document.getElementById("time");
        time.innerHTML = second + "";
    }
    setInterval(fun,1000);
</script>
</body>
相关文章
|
1月前
|
缓存 JavaScript UED
js中BOM中的方法
【10月更文挑战第31天】
|
3月前
|
XML 移动开发 JavaScript
js中BOM和DOM总结(基础篇)
文章总结了JavaScript的BOM和DOM知识点,包括window、screen、location、history、navigator对象,以及消息框、计时器和cookie。同时,介绍了DOM的概念、节点获取和修改方法,以及事件处理。
js中BOM和DOM总结(基础篇)
|
2月前
|
JavaScript 前端开发 Java
【前端基础篇】JavaScript之BOM介绍
【前端基础篇】JavaScript之BOM介绍
43 0
|
7月前
|
JavaScript 前端开发
javascript操作BOM的方法
javascript操作BOM的方法
53 0
|
3月前
|
JavaScript 前端开发 API
Javaweb之javascript的BOM对象的详细解析
BOM为Web开发提供了强大的API,允许开发者与浏览器进行深入的交互。合理使用BOM中的对象和方法,可以极大地增强Web应用的功能性和用户体验。需要注意的是,BOM的某些特征可能会在不同浏览器中表现不一致,因此在开发过程中需要进行仔细的测试和兼容性处理。通过掌握BOM,开发者能够制作出更丰富、更动态、更交互性的JavaWeb应用。
37 1
|
4月前
|
编解码 JavaScript 前端开发
JS逆向浏览器脱环境专题:事件学习和编写、DOM和BOM结构、指纹验证排查、代理自吐环境通杀环境检测、脱环境框架、脱环境插件解决
JS逆向浏览器脱环境专题:事件学习和编写、DOM和BOM结构、指纹验证排查、代理自吐环境通杀环境检测、脱环境框架、脱环境插件解决
137 1
|
4月前
|
JavaScript 前端开发
js bom的概念
js bom的概念
37 1
|
4月前
|
JavaScript 前端开发
JavaScript BOM 的概念(浏览器对象模型)
JavaScript BOM 的概念(浏览器对象模型)
58 1
|
4月前
|
存储 JavaScript 前端开发
JavaScript中的BOM
JavaScript中的BOM
|
6月前
|
JavaScript 前端开发 API
JavaScript基础-BOM与窗口交互
【6月更文挑战第12天】本文介绍了BOM(浏览器对象模型),它是JavaScript与浏览器交互的API。核心对象包括顶级对象window、document、location、navigator和history。常见问题涉及window全局作用域、location.href编码、history使用和navigator.userAgent检测。提供了代码示例,如设置页面标题、页面跳转及利用history实现无刷新跳转。掌握BOM基础和最佳实践对前端开发至关重要。
49 5