关于document学习笔记及涉及的前端笔试题

Document

  • 文档子节点

    • document.documentElement 始终指向HTML页面中的<html>元素javascript

    • document.body 始终指向<body>元素html

    • document.title 包含着<title>元素中的文本java


  • 文档信息

    • document.URL 取得地址栏中显示的URLsegmentfault

    • document.domain 只包含页面的域名跨域

    • document.referrer 保存连接到当前页面的那个页面的URL
      URL、domain、referrer三个属性中,只有domain能够设置值。URL与domain是相互关联的。可是因为安全限制,只能设置为URL中包含的域。安全

    【笔试题出现过跨域问题
    来自不一样子域的页面没法经过javascript通讯,而经过将每一个页面的document.domain设置为相同的值,这些页 面就可互相访问对方的javascript对象。
    关于跨域问题可查看 http://www.cnblogs.com/2050/p/3191744.html (js中几种实用的跨域方法原理详解)
    http://www.cnblogs.com/rainman/archive/2011/02/20/1959325.html (JavaScript跨域总结与解决办法)
    除此以外,若是域名一开始是松散的,则不能再设置为紧绷的。例如:dom

    //假设页面来自于 test.segmentfault.com 域
       document.domain = "segmentfault.com"; //loose松散的(成功)
       document.domain = "test.segmentfault.com"; //tight紧绷的(失败!报错)

  • 查找元素

    • getElementById("id")
      其中参数id大小写区分。如有多个元素ID值相同,只返回文档中第一次出现的元素。code

    【IEbug】:如有哪一个表单元素的name值与参数id相同,且该元素位置在id元素以前,则IE会返回表单元素。 【解决方案:不让表单中的name特性与其余元素ID相同】orm

    • getElementsByTagName()
      返回一个HTMLCollection对象(是一个“动态”集合)htm

    【注意:由于返回的是一个集合,因此是getElementsByTagName】

    //获取全部元素
       var allElements = document.getElementsByTagName("*");
       //获取全部图像元素
       var images = document.getElementsByTagName("img");
       var src = images[0].src;; // 第一个图像元素的src特性
       var src = images.item(0).src; //也是第一个图像元素的src特性
       //假设有一个图像元素为
       <img src="myimage.jpg" name="myImage">
       //能够经过如下两种方式来获取该元素
       var myImage = images.namedItem("myImage");
       var myImage = images["myImage"];
    • getElementsByName()
      只有HTMLDocument类型才有的方法。返回带有给定name特性的全部元素


  • 特殊集合

    都是HTMLCollection对象。

    • document.images 包含全部<img>元素

    • document.links 包含全部带href特性的a元素

    • document.anchors 包含全部带name特性的a元素

    • document.forms 包含全部<form>元素


  • 文档写入

    • write() 原样写入到输出流

    • writeln() 与write()相同,多了一个换行符
      //能够动态包含外部资源。但须要注意转义字符使用,以避免字符串解释错误。

    //若是在文档加载结束后再调用document.write(),输出的内容将会重写整个页面。

    <script>
           document.write("<script type=\"text/javascript\" src=\"test.js\">"+ "<\/script>");
       </script>
    • open() 打开网页输出流

    • close() 关闭网页输出流如果在页面加载期间使用write或writeln方法,则无需用到open和close方法

相关文章
相关标签/搜索