window对象 第七天(又是美妙的一天)

计时器

setTimeout()setInterval() 可以用来注册在指定的时间之后单次或重复调用的函数。Window对象的setTimeout()方法用来实现一个函数在指定的毫秒数之后运行。setTimeout()返回一个值,这个值可以传递给clearTimeout()用于取消这个函数的执行。

  //例14-1  定时应用函数
      function invoke(f, start, interval, end) {
        if (!start) start = 0;
        if (arguments.length <= 2) {
          setTimeout(f, start);//当只有前两个参数时
        } else {
          setTimeout(repeat, start);
          function repeat() {
            var h = setInterval(f, interval);
            if (end) {//当end存在时
              setTimeout(function () {
                clearTimeout(h);
              }, end);
            }
          }
        }
      }

浏览器定位和导航

Window对象的location属性引用的是Location对象,它表示该窗口中当前显示的文档的URL,并定义了方法来使窗口载入新的文档,Document对象的location属性也引用到Location对象。

window.location=document.location;//=>true
解析URL

Window对象的location属性引用的是Location对象,它表示该窗口中当前显示的文档的URL。Location对象的href属性是一个字符串,后者包含URL的完整文本。Location对象的其它属性:protocol、host、hostname、port、pathname和search.其中hash属性返回URL中的“片段标识符”部分,search属性返回的是问号之后的URL,这部分通常是某种类型的查询字符串。

载入新文档

Location对象的assign()方法可以使窗口载入并显示你指定的URL中的文档。replace()方法也类似,当它在载入新文档之前会从浏览历史中把当前文档删除(不能点返回键)。Location对象还定义了reload()方法,可以让浏览器重新载入当前文档。使浏览器跳转到新页面的一种更传统的方法是直接把新的URL赋值给location属性。

location.assign("page2.html");
location.replace("page2.html");
window.location="http://baidui.com";
location="page2.html";
location="#top"//跳转到此页面的顶部

浏览历史

window对象的history属性引用的是historty属性引用的是该窗口的Historty对象。Historty对象是用来把窗口的浏览历史用文档和文档状态列表的形式表示。History对象的length属性表示浏览历史列表中的元素数量。
History对象的**back()forward()**方法与浏览器的“后退”和“前进”按钮一样:他们使浏览器在浏览历史中前后跳转一格。**go()**方法接受一个整数参数,可以在历史列表中向前(正参数)或向后(负参数)跳过任意多个页。

history.go(-2);//后退两个历史记录,相当点击“后退”按钮两次

浏览器和屏幕信息

脚本有时需要获取和它们所在的Web浏览器或浏览器所在桌面相关的信息。

Navigator对象

Window对象的navigator属性引用的是包含浏览器厂商和版本信息的Navigator对象。
Navigator对象有四个属性用于提供关于运行中的浏览器的版本信息,并且可以使用这些属性进行浏览器嗅探。
在这里插入图片描述
Navigator对象还包括一些杂项的属性和方法。
在这里插入图片描述

Screen对象

Window对象的screen属性引用的是Screen对象。它提供有关窗口显示的大小和可用的颜色数量信息。属性width和height指定的是以像素为单位的窗口大小。属性availWidth和availHeight指定的是实际可用的显示大小,它们排除了像桌面任务栏这样的特性所占有的空间。属性colorDepth指定的是显示的BPP(bits-per-pixel)值。

对话框

Window对象提供三个方法来向用户显示简单的对话框。**alert()**向用户显示一条消息并等待用户关闭对话框。confirm()向用户显示一条消息,要求用户点击“确认”或“取消”按钮,并返回一个值(true或false)。prompt()向用户显示一条消息,同样等待用户输入字符串,并返回这个字符串。

 do {
          var name = prompt("What is your name?");
          var corrent = confirm(
            "You entered '" +
              name +
              "'.\n" +
              "Click Okay to processed or Cancel to re-enter"
          );
        } while (!corrent);
        alert("Hi, " + name);
错误处理

Window对象的onerror属性是一个事件处理程序,当捕获的异常传播到调用栈时就会调用它。Window对象的onerror事件处理函数的调用通过三个字符串参数。

//重写Window.onerror()
 window.onerror = function (msg, url, line) {
          if (onerror.num++ < onerror.max) {
            alert("ERROR: " + msg + "\n" + url + ":" + line);
            return true;
          }
        };

        onerror.max = 3;
        onerror.num = 0;
        document.write(bn);

作为Window对象属性的文档元素

如果在HTML文档中用id属性来为元素命名,并且如果Window对象没有此名字的属性,Window对象会赋予一个属性,它的名字是id属性的值,而它们的值指向表示文档元素的HTMLElement对象。当Window对象存在此名字的属性时,如果脚本中的变量声明出现在命名元素之前,那这个变量的存在就会阻止元素获取它的Window属性。而如果脚本的变量声明出现在命名元素之后,那么变量的显示赋值会覆盖该属性的隐式值。

多窗口和窗体

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

扎克风暴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值