zoukankan      html  css  js  c++  java
  • DOM浏览器window对象模型

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

    所有浏览器都支持 window 对象。它表示浏览器窗口。

    所有 JavaScript 全局对象、函数以及变量均自动成为 window 对象的成员。

    全局变量是 window 对象的属性。

    全局函数是 window 对象的方法。

    甚至 HTML DOM 的 document 也是 window 对象的属性之一:

    有三种方法能够确定浏览器窗口的尺寸

    Internet Explorer、Chrome、Firefox、Opera 以及 Safari:

    • window.innerHeight - 浏览器窗口的内部高度(包括滚动条)
    • window.innerWidth - 浏览器窗口的内部宽度(包括滚动条)

    对于 Internet Explorer 8、7、6、5:

    • document.documentElement.clientHeight
    • document.documentElement.clientWidth

    以上可以用这个

    var w=window.innerWidth
    || document.documentElement.clientWidth
    || document.body.clientWidth;
    
    var h=window.innerHeight
    || document.documentElement.clientHeight
    || document.body.clientHeight;

    1、全局变量不能通过 delete 操作符删除;而 window 属性上定义的变量可以通过 delete 删除

    var num=123;
    window.str="string";
    delete num;
    delete str;
    console.log(num); //123
    
    console.log(str); //str is not defined
    //全局变量不能通过 delete 删除,因为通过 var 定义全局变量会有一个名为 [Configurable] 的属性,默认值为 false,所以这样定义的属性不可以通过 delete 操作符删除

    var newValue=oldValue; // 报错:oldValue is not defined
    var newValue=window.oldValue; // 不会报错
    console.log(newValue); // undefined

    、访问未声明的变量会抛出错误,但是通过查询 window 对象,可以知道某个可能未声明的变量是否存在。

    window.screen 对象包含有关用户屏幕的信息。
    screen.availWidth 属性返回访问者屏幕的宽度,以像素计,减去界面特性,比如窗口任务栏。

    window.Location
    • location.hostname 返回 web 主机的域名
    • location.pathname 返回当前页面的路径和文件名
    • location.port 返回 web 主机的端口 (80 或 443)
    • location.protocol 返回所使用的 web 协议(http: 或 https:)

    加载文档

    window.location.assign("https://www.runoob.com")

    • history.back() - 与在浏览器点击后退按钮相同
    • history.forward() - 与在浏览器中点击向前按钮相同
    • history.go(1);  // go() 里面的参数表示跳转页面的个数 例如 history.go(1) 表示前进一个页面
    window.navigator 对象包含有关访问者浏览器的信息。
    txt = "<p>浏览器代号: " + navigator.appCodeName + "</p>";
    txt+= "<p>浏览器名称: " + navigator.appName + "</p>";
    txt+= "<p>浏览器版本: " + navigator.appVersion + "</p>";
    txt+= "<p>启用Cookies: " + navigator.cookieEnabled + "</p>";
    txt+= "<p>硬件平台: " + navigator.platform + "</p>";
    txt+= "<p>用户代理: " + navigator.userAgent + "</p>";
    txt+= "<p>用户代理语言: " + navigator.systemLanguage + "</p>";
    document.getElementById("example").innerHTML=txt;

    来自 navigator 对象的信息具有误导性,不应该被用于检测浏览器版本,这是因为:

    • navigator 数据可被浏览器使用者更改
    • 一些浏览器对测试站点会识别错误
    • 浏览器无法报告晚于浏览器发布的新操作系统

    弹窗

    window.alert() 方法可以不带上window对象,直接使用alert()方法。

    window.confirm("sometext");

    window.prompt("sometext","defaultvalue");

    计时时间

    • setInterval() - 间隔指定的毫秒数不停地执行指定的代码。
    • setTimeout() - 在指定的毫秒数后执行指定代码。
    • clearInterval() 方法用于停止 setInterval() 方法执行的函数代码。
    • clearTimeout() 方法用于停止执行setTimeout()方法的函数代码。
     
  • 相关阅读:
    报表
    重构改善既有代码设计--重构手法02:Inline Method (内联函数)& 03: Inline Temp(内联临时变量)
    重构改善既有代码设计--重构手法01:Extract Method (提炼函数)
    httpclient 学习
    JAVA中反射机制六(java.lang.reflect包)
    JAVA中反射机制五(JavaBean的内省与BeanUtils库)
    JAVA中反射机制四
    JAVA中反射机制三
    JAVA中反射机制二
    JAVA中反射机制一
  • 原文地址:https://www.cnblogs.com/webcyh/p/11290450.html
Copyright © 2011-2022 走看看