JavaScript第八章

JavaScript第八章

  • 理解window对象——BOW的核心
    • window对象
      • 全局作用域
      • 所有在全局作用域中声明 的变量、函数都会变成 window 对象的属性和方法

      • 窗口关系及框若架
      • 页面中若包含框架,则每个框架都拥有自己的window 对象,并且保存在frames 集合中。在frames 集合中,可以通过数值索引(从 0开始,从左至右,从上到下)或者框架名称来访问相应的 window 对 象。每个 window 对象都有一个 name 属性,其中包含框架的名称。

      • 窗口位置
      • 用来确定和修改 window 对象位置的属性和方法: 。
        IE、Safari、Opera 和 Chrome 都提供了 screenLeft 和 screenTop 属性
        Firefox 则在 screenX 和 screenY 属性
        Opera 虽然也支持 screenX 和 screenY 属性,但与 screenLeft 和 screenTop 属性并不对应。

      • 窗口大小
      • innerWidth 和innerHeight 则表示该容器中页面视图区的大小(减去边框宽度)
        在移动设备中,window.innerWidth 和 window.innerHeight 保存着可见视口,也就是屏幕上可 见页面区域的大小。
        resizeTo()和 resizeBy()方法可以调整浏览器窗口的大小。这两个方法都接收两个 参数,其中 resizeTo()接收浏览器窗口的新宽度和新高度,而 resizeBy()接收新窗口与原窗口的宽 度和高度之差。

      • 导航和打开窗口
      • window.open()方法:导航到一个特定的 URL,也可以打开一个新的浏览器窗口。这个 方法接收 4个参数:要加载的 URL、窗口目标、一个特性字符串以及一个表示新页面是否取代浏览 器历史记录中当前加载页面的布尔值。

        • 弹出窗口
        • 如果给 window.open()传递的第二个参数并不是一个已经存在的窗口或框架,那么该方法就会根 据在第三个参数位置上传入的字符串创建一个新窗口或新标签页。如果没有传入第三个参数,那么就会 打开一个带有全部默认设置(工具栏、地址栏和状态栏等)的新浏览器窗口(或者打开一个新标签页— —根据浏览器设置)。

        • 安全限制
        • 为了解决广告,有些浏览器开始在弹出窗口配置方面增加很多限制

        • 弹出窗口屏蔽程序
        • 大多数浏览器都内置有弹出窗口屏蔽程序,用window.open()检查是否返回null。

      • 间歇调用和超时调用
      • JavaScript 是单线程语言,它允许通过设置超时值和间歇时间值来调度代码在特定的时刻执行。

        • 超时调用:使用 window 对象的 setTimeout()方法,它接受两个参数:要执行的代码和以毫秒 表示的时间(即在执行代码前需要等待多少毫秒)。其中,第一个参数可以是一个包含 JavaScript代码的 字符串(就和在 eval()函数中使用的字符串一样),也可以是一个函数。返回一个ID,可以用它和clearTimeout()方法来取消调用。
        • 间歇调用:它会按照指定的时间间隔重复执行代码,直至间歇调用被取消或 者页面被卸载, setInterval(),它接受的参数与 setTimeout()相同:要执行的代码(字符串或函数)和每次执行之前需要等待的毫秒数。与steTimeout()类似。
      • 系统对话框
        • 浏览器通过 alert()、confirm()和 prompt()方法可以调用系统对话框向用户显示消息。在弹出对话框的时候,代码停止执行。

          • alert():alert()方法的结果就是向用户显示一个系统对话框,其中包含指定的文本和一个 OK(“确定”)按钮
          • confirm():和alertI(),差不多,不过还有一个取消按钮。确定返回OK,取消返回false。
          • prompt():稍微复杂一些,提示框中除了显示 OK和 Cancel按钮之外,还会显示一个文本输入域,以供用户在其中输入内容。 prompt()方法接受两个参数:要显示给用户的文本提示和文本输入域的默认值(可以是一个空字符串)。如果用户单击了 OK按钮,则 prompt()返回文本输入域的值;如果用户单击了 Cancel或没有单击 OK而是通过其他方式关闭了对话框,则该方法返回 null。
  • location 对象
    • location 对象的用处不只表现在它保存着当前文档的信息,还表现在它将 URL 解析为独立的片段,让 开发人员可以通过不同的属性访问这些片段

    • 在这里插入图片描述
      • 查询字符串参数 :
        • location.search 返回从问号到 URL末尾的所有内容,但却没有办法逐个 访问其中的每个查询字符串参数,,可以像创建一个函数,用以解析查询字符串,然后返 回包含所有参数的一个对象。

        • 位置操作
        • 主要是location对象的方法来操作,比如:
        • //假设初始 URL 为 http://www.wrox.com/WileyCDA/
          //将 URL 修改为"http://www.wrox.com/WileyCDA/#section1" location.hash = “#section1”;
          //将 URL 修改为"http://www.wrox.com/WileyCDA/?q=javascript" location.search = “?q=javascript”;
          //将 URL 修改为"http://www.yahoo.com/WileyCDA/" location.hostname = “www.yahoo.com”;
          //将 URL 修改为"http://www.yahoo.com/mydir/" location.pathname = “mydir”;
          //将 URL 修改为"http://www.yahoo.com:8080/WileyCDA/" location.port = 8080;

  • 使用navigator 对象了解浏览器
    • navigator 对象的属性通常用于检测显示网页的浏览器类型

    • 在这里插入图片描述

    • 在这里插入图片描述

    • 检测插件
    • 用piugins数组来实现:
      name:插件的名字。
      description:插件的描述。
      filename:插件的文件名。
      length:插件所处理的 MIME类型数量。

      • 检测 IE中的插件:
        IE 中检测插件的唯一方式就是 使用专有的 ActiveXObject 类型,并尝试创建一个特定插件的实

    • 注册处理程序
    • registerContentHandler()方法

      • 接收三个参数::要处理的 MIME类型、可以处理该 MIME 类型的页面的 URL以及应用程序的名称

    • registerProtocolHandler()方法

      • 与上面类似三个参数但是参数是1.要处理的协 议(例如,mailto 或 ftp)、2.处理该协议的页面的 URL、3.应用程序的名称

  • screen 对象
    • screen 对象基本上只 用来表明客户端的能力,其中包括浏览器窗口外部的显示器的信息,如像素宽度和高度等。
    • 在这里插入图片描述
  • history 对象
    • history 对象保存着用户上网的历史记录,从窗口被打开的那一刻算起。有几个方法来调试历史纪录,如go(forward)方法,back方法,还有一个length属性,保存着历史记录的数量。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值