JavaScript笔记(从 w3scholl学习)(三)

34. 添加和删除节点(HTML 元素)
    1) 创建新的HTML元素
        如需向HTML DOM添加新元素,您必须首先创建该元素(元素节点),然后向一个已存在的元素追加该元素  。

       JavaScript笔记(从 w3scholl学习)(三)

   2) 删除已有的HTML元素
       如需删除HTML元素,您必须首先获得该元素的父元素:

       JavaScript笔记(从 w3scholl学习)(三)

35. JS Window
   1) Window 对象
       所有浏览器都支持 window 对象。它表示浏览器窗口。
       所有JavaScript全局对象、函数以及变量均自动成为window对象的成员。
       全局变量是window对象的属性。
       全局函数是window对象的方法。
       甚至HTML DOM的document也是window对象的属性之一:
          Window.document 与 document 相同。
   2) Window尺寸
       有三种方法能够确定浏览器窗口的尺寸(浏览器的视口、不包括工具栏和滚动条)。
       对于Internet Explorer、Chrome、Firefox、Opera以及Safari:
           Window.innerHeight  浏览器窗口的内部高度
           Window.innerWidth  浏览器窗口的内部宽度
       对于Internet Explorer 8、7、6、5:
            Document.documentElement.clientHeight
            Document.documentElement.clientWidth
       或者
            Document.body.clientHeight
            Document.body.clientWidth
       实用的JavaScript方案(涵盖所有浏览器):

       JavaScript笔记(从 w3scholl学习)(三)

     3) 其他Window方法
         Window.open()  打开新窗口
         Window.close()  关闭当前窗口
         Window.moveTo()  移动当前窗口
         Window.resizeTo()  调整当前窗口的尺寸 

36. JS Screen
     Window.screen 对象包含有关用户屏幕的信息。
     在编写的时候可以不用window这个前缀。
     一些属性:
       Screen.availWidth –> 可用的屏幕宽度,以像素计,减去界面特性,比如窗口任务栏
       Screen.availHeight  可用的屏幕高度,以像素计,减去界面特性,比如窗口任务栏
37. JS Window Location
     Window.location 对象用于获得当前页面的地址(URL),并把浏览器重定向到新的页面。
     1) Window Location 在编写时可不使用window这个前缀
        Location.hostname  返回web主机的域名
        Location.pathname  返回当前页面的路径和文件名
        Location.port  返回web主机的端口
        Location.protocol  返回所使用的web协议

    2) Window Location Href
        Location.href  该属性返回当前页面的URL。

        JavaScript笔记(从 w3scholl学习)(三)

    3) Window Location Pathname
        Location.pathname  该属性返回URL的路径名

       JavaScript笔记(从 w3scholl学习)(三)

   4) Window Location Assign
       Location.assign() –> 该方法加载新的文档

38. JavaScript Window History
      Window.history 对象包含浏览器的历史。
      在编写时可不使用window 这个前缀。
      为了保护用户隐私,对JavaScript访问该对象的方法作出了限制。
      1) Window History Back
           History.back() 方法加载历史列表中的前一个URL。
      2) Window History Forward
           History.forward() 方法加载历史列表中的下一个URL。
39. JavaScript Window Navigator
      Window.navigator 对象包含有关浏览器的信息。
      在编写时可不使用window这个前缀。

      JavaScript笔记(从 w3scholl学习)(三)

      警告:来自 navigator 对象的信息具有误导性,不应该被用于检测浏览器版本,这是因为:
      navigator 数据可被浏览器使用者更改
      浏览器无法报告晚于浏览器发布的新操作系统

40. 可以在JavaScript中创建三种消息框:警告框、确认框、提示框。
      1) 警告框
          警告框经常用于确保用户可以得到某些信息。
          当警告框出现后,用户需要点击确定按钮才能继续进行操作。
          语法:

         JavaScript笔记(从 w3scholl学习)(三)

      2) 确认框
          确认框用于使用户可以验证或者接受某些信息。
         当确认框出现后,用户需要点击确定或者取消按钮才能继续进行操作。
         如果用户点击确认,那么返回值为true。如果用户点击取消,那么返回值为false。
         语法:

         JavaScript笔记(从 w3scholl学习)(三)

      3) 提示框
          提示框经常用于提示用户在进入页面前输入某个值。
          当提示框出现后,用户需要输入某个值,然后点击确认或取消按钮才能继续操纵。
          如果用户点击确认,那么返回值为输入的值。如果用户点击取消,那么返回值为 null。
          语法:

          JavaScript笔记(从 w3scholl学习)(三)

41. JavaScript计时
      通过使用JavaScript,我们有能力做到在一个设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行。我们称之为 计时事件。
      1) 在JavaScript中使用计时事件是很容易的,两个关键方法是:
          setTimeout()  未来的某时执行代码
          clearTimeout()  取消setTimeout
      2) setTimeout()
          语法:var t=setTimeout(“JavaScript语句”, “毫秒”)
          setTimeout()方法会返回某个值。在上面的语句中,值被存储在名为t的变量中。
          假如希望取消这个setTimeout(),可以使用这个变量名来指定它。
          setTimeout()的第一个参数是含有JavaScript语句的字符串。这个语句可能是“alert(‘5 seconds!’)”,或者对函数的调用,如 alertMsg()。
          第二个参数指示从当前起多少毫秒后执行第一个参数。
         提示:1000 毫秒等于一秒。
         实例:无穷循环
         要创建一个运行于无穷循环中的计时器,我们需要编写一个函数来调用其自身。

        JavaScript笔记(从 w3scholl学习)(三)

        3) clearTimeout()
            语法:clearTimeout(setTimeout_variable)

42. JavaScript Cookies
      Cookie用来识别用户。
      1) 什么是cookie?
          Cookie是存储于访问者的计算机中的变量。每当同一台计算机通过浏览器请求某个界面时,就会发送这个cookie。

         你可以使用JavaScript来创建和取回cookie的值。
      2) 有关cookie的例子
         名字cookie
            当访问者首次访问页面时,他或她也许会填写他/她们的名字。名字会存储于Cookie中。

            当访问者再次访问网站时,他们会收到类似’Welcome Jone Doe’ 的欢迎词。而名字则是从cookie中取回的。
         密码 cookie
            当访问者首次访问页面时,他或她也许会填写他/她们的密码。密码也可被存储于cookie 中。

            当他们再次访问网站时,密码就会从 cookie 中取回。
         日期cookie
            当访问者首次访问你的网站时,当前的日期可存储于 cookie 中。当他们再次访问网站时,他们会收到类似这样的一条消息:"Your last visit was on Tuesday August 11, 2005!"。日期也是从 cookie 中取回的。
      3) 创建和存储cookie
          在这个例子中我们要创建一个存储访问者名字的 cookie。当访问者首次访问网站时,他们会被要求填写姓名。
          名字会存储于 cookie 中。当访问者再次访问网站时,他们就会收到欢迎词。
          首先,我们会创建一个可在cookie变量中存储访问者姓名的函数:

          JavaScript笔记(从 w3scholl学习)(三)

         上面这个函数中的参数存有cookie的名称、值以及过期天数。
         在上面的函数中,我们首先将天数转换为有效的日期,然后我们将cookie名称、值及其过期日期存入

        document.cookie对象。
        之后,我们要创建另一个函数来检查是否已设置cookie:

        JavaScript笔记(从 w3scholl学习)(三)

       上面的函数首先会检查 document.cookie 对象中是否存有 cookie。
       假如 document.cookie 对象存有某些 cookie,那么会继续检查我们指定的 cookie 是否已储存。
       如果找到了我们要的 cookie,就返回值,否则返回空字符串。

       最后,我们要创建一个函数,这个函数的作用是:

       如果 cookie 已设置,则显示欢迎词,否则显示提示框来要求用户输入名字。

       JavaScript笔记(从 w3scholl学习)(三)