权威指南读书笔记 window对象

计时器

setTimeOut(),setInterval() 与clearInterval 是客户端重要的全局函数,定义为window的重要方法,但是为通用函数,其实不会对窗口做什么事情。

setTimeOut()和setInterval()可以作为字符串传入。如果这么做,那个字符串会在指定的超时时间或间隔之后进行求值。html5还允许setTimeOut()和setInterval()传入额外参数,并在调用函数时把这些参数传递过去。

注意:

  • 如果是以0毫秒的时间来调用setTimeOut(),那么指定的函数不会立刻执行,相反他会把他插入到队列当中,等到前面处于等待状态的事件处理程序执行完成后,再立即调用它。
  • 如果想使用clearInterval 来清除掉循环器,那么与其配套的setInterval的参数应该是一个函数名,而非匿名函数。

URL

浏览器定位和导航可以使用 window的location对象 或者document.location.
两者是时时全等

window.location === document.location

document.url属性也可以获得页面的地址,但是这个地址是文档首次加载后保存文档的URL的静态字符串。如果定位到文档的片段标示符,location对象会更新,但是url不会。

location的属性

document.URL
"http://wiki.corp.qunar.com/pages/viewpage.action?pageId=68331893#name"
location.protocol
"http:"
location.host
"wiki.corp.qunar.com"
location.hostname
"wiki.corp.qunar.com"
location.port
""
location.pathname
"/pages/viewpage.action"
location.search
"?pageId=68331893"
location.hash
"#name"

重新载入文档方式

location.assgin()
location.replace()
location.reload()

location可写属性,可以使用绝对或是相对的方式设置页面,也可以设置他的属性。

    location='http://www.baidu.com';
    location='page2.html'//载入下一个页面
    location='#top'
    location.search='?page='+(page+1)

浏览历史

window.history 引用的是History对象,使用 back forward go控制。
历史解决方案 可以采用jquery。

navigator对象

该属性引用的是包含浏览器厂商和版本信息的Navigator对象。

navigator.appName
"Netscape"//除了IE以外 基本都市网景
navigator.appVersion
"5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/600.1.3 (KHTML, like Gecko) Version/8.0 Mobile/12A4345d Safari/600.1.4"
//标志为第四代还是第五代浏览器 没有标准的格式,因此不能使用它来判断浏览器类型
navigator.userAgent
"Mozilla/5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/600.1.3 (KHTML, like Gecko) Version/8.0 Mobile/12A4345d Safari/600.1.4"
//浏览器嗅探通常使用该属性进行判断,通常使用正则表单式进行判断
navigator.platform
"MacIntel"
//浏览器运行的操作系统
navigator.onLine
true//表示是否联网

Screen 对象

属性availWidth和availHeight指的是实际可用的显示大小,他排除了像桌面任务栏这样的特性所占的空间。
属性colorDepath表示bits-per-pixel 的值

对话框

    alert();
    confirm();
    prompt();

confirm 和 prompt会产生阻塞 。alert在不同浏览器里表现不同,有的浏览器中也会产生阻塞。

错误处理

onerror属性是一个事件处理函数,当未捕获的异常传播到调用栈上时就会调用它。
三个参数,第一个是描述错误的消息,第二参数是一个字符串,它存放引发错误的Javascript代码所在的文档的Url。第三参数是文档中发生错误的行数。

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;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • window对象是所有客户端JavaScript特性和API的主要接入点。 常用方法 alert 弹出一个对话框用...
    亮亮叔家的小笔笔阅读 4,363评论 0 2
  • 一、JS前言 (1)认识JS 也许你已经了解HTML标记(也称为结构),知道了CSS样式(也称为表示),会使用HT...
    凛0_0阅读 7,760评论 0 8
  • window对象是客户端JavaScript程序的全局对象,包含多数的属性和方法。 计时器 Window对象包含2...
    kissLife阅读 5,182评论 0 0
  • 第1章 认识JS JavaScript能做什么?1.增强页面动态效果(如:下拉菜单、图片轮播、信息滚动等)2.实现...
    mo默22阅读 5,228评论 0 5
  • 为你千千万万遍! For you ,a thousand times over. 时间很贪婪,有时候它会独自吞噬所...
    木子潇湘阅读 2,490评论 0 0

友情链接更多精彩内容