115_js笔记17_js的bom操作

一,BOM

  • 浏览器对象模型(Browser Object Model (BOM))

二,window对象

  1. 所有浏览器都支持 window 对象。它表示浏览器窗口。
  2. 所有 JavaScript 全局对象、函数以及变量均自动成为 window 对象的成员。
  3. 全局变量是 window 对象的属性;全局函数是 window 对象的方法。
  4. window常可以省略,window.document.getElementById("header");等价于document.getElementById("header");

三,window尺寸

  1. 浏览器当前的尺寸,伸缩后值变化
  2. 涵盖所有浏览器
  3. /*1,当前浏览器的实际宽度和高度*/
        var w=window.innerWidth
        || document.documentElement.clientWidth
        || document.body.clientWidth;
        var h=window.innerHeight
        || document.documentElement.clientHeight
        || document.body.clientHeight;
        x=document.getElementById("demo");
        x.innerHTML="浏览器window宽度: " + w + ", 高度: " + h + "。"

     

三,Window Screen尺寸

  1. 浏览器在窗口的最大尺寸,每一台电脑值固定
  2. screen.availWidth - 可用的屏幕宽度
  3. screen.availHeight - 可用的屏幕高度
  4. /*2,当前浏览器的可用宽度和高度*/
        document.write("可用宽度: " + screen.availWidth);
        document.write("可用高度: " + screen.availHeight);

四,window.location 

  1. window.location 对象用于获得当前页面的地址 (URL),并把浏览器重定向到新的页面
  2. 返回的中文路径可以使用decodeURI来转换中文
  3. location.hostname 返回 web 主机的域名
  4. location.pathname 返回当前页面的路径和文件名
  5. location.port 返回 web 主机的端口 (80 或 443)
  6. location.protocol 返回所使用的 web 协议(http:// 或 https://) 

五,Window History

  1. window.history 对象包含浏览器的历史
  2. history.back() - 与在浏览器点击后退按钮相同
  3. history.forward() - 与在浏览器中点击向前按钮相同
  4. history.go(-1):等效于history.back()
  5. history.go(1):等效于history.forward()
  6. /*4,Window History,在编写时可不使用 window 这个前缀*/
        function goBack()
            {
                window.history.back();
                // 或者以下方法:
                // history.go(-1);
            }
        function goForward()
            {
                window.history.forward();
                // 或者以下方法:
                // history.go(1); 
            }

     

六,Window.navigator

  1. window.navigator 对象包含有关访问者浏览器的信息
    1. 浏览器代号: " + navigator.appCodeName + "</p>";
    2. 浏览器名称: " + navigator.appName + "</p>";
    3. 浏览器版本: " + navigator.appVersion + "</p>";
    4. 启用Cookies: " + navigator.cookieEnabled + "</p>";
    5. 硬件平台: " + navigator.platform + "</p>";
    6. 用户代理: " + navigator.userAgent + "</p>";
    7. 用户代理语言: " + navigator.systemLanguage + "</p>";
  2. 来自 navigator 对象的信息具有误导性,不应该被用于检测浏览器版本
    1. navigator 数据可被浏览器使用者更改
    2. 一些浏览器对测试站点会识别错误
    3. 浏览器无法报告晚于浏览器发布的新操作系统
  3. 由于不同的浏览器支持不同的对象,您可以使用对象来检测浏览器
    1. 例子:if (window.opera) {...some action...}

 

七,Window Screen弹窗

  1. 警示框
    1. 警告框经常用于确保用户可以得到某些信息。
    2. 当警告框出现后,用户需要点击确定按钮才能继续进行操作。
    3. window.alert("sometext");
  2. 确认框
    1. 确认框通常用于验证是否接受用户操作。
    2. 当确认卡弹出时,用户可以点击 "确认" 或者 "取消" 来确定用户操作。 
    3. 当你点击 "确认", 确认框返回 true, 如果点击 "取消", 确认框返回 false。
    4. window.confirm("sometext");
  3. 提示框
    1. 提示框经常用于提示用户在进入页面前输入某个值。
    2. 当提示框出现后,用户需要输入某个值,然后点击确认或取消按钮才能继续操纵。
    3. 如果用户点击确认,那么返回值为输入的值。如果用户点击取消,那么返回值为 null。
    4. window.prompt("sometext","defaultvalue");
  4. //警告框
          function myFunction1()
            {
                alert("你好,我是一个警告框!");
            }
    //确认框
            function myFunction2()
            {
               var x;
               var r = confirm("你好,我是一个确认框!");
                if (r==true){
                    x="你按下了\"确定\"按钮!";
                }
                else{
                    x="你按下了\"取消\"按钮!";
                };
                document.getElementById("demo6").innerHTML=x;
            }
    //提示框
            function myFunction3()
            {
                var person=prompt("你好,我是一个提示框!","Harry Potter");
                if (person!=null && person!="")
                {
                    x="你好 " + person + "! 今天感觉如何?";
                    document.getElementById("demo7").innerHTML=x;
                }
            }

     

八,计时事件

  1. setInterval() - 间隔指定的毫秒数不停地执行指定的代码。
    1. setInterval(function(){alert("Hello")},3000);
  2. clearInterval() 方法用于停止 setInterval() 方法执行的函数代码
  3. setTimeout() - 在指定的毫秒数后执行指定代码。
    1. setTimeout(function(){alert("Hello")},3000);
  4. clearTimeout() 方法用于停止执行setTimeout()方法的函数代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值