用户不能改变document.location(因为这是当前显示文档的位置)。但是,可以改变window.location (用其它文档取代当前文档)window.location本身也是一个对象,而document.location不是对象
document.location 这个对象包含了当前URL的信息 
location.host 获取port号 
location.hostname 设置或获取主机名称 
location.href 设置或获取整个URL 
location.port设置或获取URL的端口号 
location.search 设置或获取href属性中跟在问号后面的部分 
------------------------------------------------------------------------------- 
js中window.location的应用 
URL即:统一资源定位符 (Uniform Resource Locator, URL) 
完整的URL由这几个部分构成: 
scheme://host:port/path?query#fragment 
scheme:通信协议 
常用的http,ftp,maito等 
host:主机 
服务器(计算机)域名系统 (DNS) 主机名或 IP 地址。 
port:端口号 
整数,可选,省略时使用方案的默认端口,如http的默认端口为80。 
path:路径 
由零或多个"/"符号隔开的字符串,一般用来表示主机上的一个目录或文件地址。 
query:查询 
可选,用于给动态网页(如使用CGI、ISAPI、PHP/JSP/ASP/ASP.NET等技术制作的网页)传递参数,可有多个参数,用"&"符号隔开,每个参数的名和值用"="符号隔开。 
fragment:信息片断 
字符串,用于指定网络资源中的片断。例如一个网页中有多个名词解释,可使用fragment直接定位到某一名词解释。(也称为锚点.) 
对于这样一个URL 
http://www.x2y2.com:80/fisker/post/0703/window.location.html?ver=1.0&id=6#imhere 
我们可以用javascript获得其中的各个部分 
1, window.location.href 
整个URl字符串(在浏览器中就是完整的地址栏) 
本例返回值: http://www.x2y2.com:80/fisker/post/0703/window.location.html?ver=1.0&id=6#imhere 
2,window.location.protocol 
URL 的协议部分 
本例返回值:http: 
3,window.location.host 
URL 的主机部分 
本例返回值:www.x2y2.com 
4,window.location.port 
URL 的端口部分 
如果采用默认的80端口(update:即使添加了:80),那么返回值并不是默认的80而是空字符 
本例返回值:"" 
5,window.location.pathname 
URL 的路径部分(就是文件地址) 
本例返回值:/fisker/post/0703/window.location.html 
6,window.location.search 
查询(参数)部分 
除了给动态语言赋值以外,我们同样可以给静态页面,并使用javascript来获得相信应的参数值 
本例返回值:?ver=1.0&id=6 
7,window.location.hash 
锚点========================================== 
document.href="http://www.jb51.net" 
document.location="http://www.jb51.net" 
window.location="http://www.jb51.net" 
只是属于包含的问题 
一个是window,一个是document 
location 是个对象 比如本页的document.location 和window.location的属性有 
location.hostname = community.csdn.net 
location.href = http://community.csdn.net/Expert/topic/4033/4033372.xml?temp=2.695864E-02 
location.host = community.csdn.net 
location.hash = 
location.port = 
location.pathname = /Expert/topic/4033/4033372.xml 
location.search = ?temp=2.695864E-02 
location.protocol = http: 
可见href 是location的属性 类别是string 。 
[document对象] 
  该对象是window和frames对象的一个属性,是显示于窗口或框架内的一个文档。 
  属性 
  alinkColor 活动链接的颜色(ALINK) 
  anchor 一个HTMI锚点,使用<A NAME=>标记创建(该属性本身也是一个对象) 
  anchors array 列出文档锚点对象的数组(<A NAME=>)(该属性本身也是一个对象) 
  bgColor 文档的背景颜色(BGCOLOR) 
  cookie 存储于cookie.txt文件内的一段信息,它是该文档对象的一个属性 
  fgColor 文档的文本颜色(<BODY>标记里的TEXT特性) 
  form 文档中的一个窗体(<FORM>)(该属性本身也是一个对象) 
  forms anay 按照其出现在文档中的顺序列出窗体对象的一个数组(该属性本身也是一个对象) 
  lastModified 文档最后的修改日期 
  linkColor 文档的链接的颜色,即<BODY>标记中的LINK特性(链接到用户没有观察到的文档) 
  link 文档中的一个<A HREF=>标记(该属性本身也是一个对象) 
  links array 文档中link对象的一个数组,按照它们出现在文档中的顺序排列(该属性本身也是一个对象) 
  location 当前显示文档的URL。用户不能改变document.location(因为这是当前显示文档的位置)。但是, 
可以改变 window.location (用其它文档取代当前文档)window.location本身也是一个对象,而 
document.location不是对象 
  referrer 包含链接的文档的URL,用户单击该链接可到达当前文档 
  title 文档的标题((TITLE>) 
  vlinkColor 指向用户已观察过的文档的链接文本颜色,即<BODY>标记的VLINK特性 
  方法 
  clear 清除指定文档的内容 
  close 关闭文档流 
  open 打开文档流 
  write 把文本写入文档 
  writeln 把文本写入文档,并以换行符结尾 
[window对象] 
  它是一个顶层对象,而不是另一个对象的属性即浏览器的窗口。 
  属性 
  defaultStatus 缺省的状态条消息 
  document 当前显示的文档(该属性本身也是一个对象) 
  frame 窗口里的一个框架((FRAME>)(该属性本身也是一个对象) 
  frames array 列举窗口的框架对象的数组,按照这些对象在文档中出现的顺序列出(该属性本身也是一个 
对象) 
  history 窗口的历史列表(该属性本身也是一个对象) 
  length 窗口内的框架数 
  location 窗口所显示文档的完整(绝对)URL(该属性本身也是一个对象)不要把它与如document.location 
混淆,后者是当前显示文档的URL。用户可以改变window.location(用另一个文档取代当前文档),但却不能改变 
document.location (因为这是当前显示文档的位置) 
  name 窗口打开时,赋予该窗口的名字 
  opener 代表使用window.open打开当前窗口的脚本所在的窗口(这是Netscape Navigator 3.0beta 3所引 
入的一个新属性) 
  parent 包含当前框架的窗口的同义词。frame和window对象的一个属性 
  self 当前窗口或框架的同义词 
  status 状态条中的消息 
  top 包含当前框架的最顶层浏览器窗口的同义词 
  window 当前窗口或框架的同义词,与self相同 
  方法 
  alert() 打开一个Alert消息框 
  clearTimeout() 用来终止setTimeout方法的工作 
  close() 关闭窗口 
  confirm() 打开一个Confirm消息框,用户可以选择OK或Cancel,如果用户单击OK,该方法返回true,单击 
Cancel返回false 
  blur() 把焦点从指定窗口移开(这是Netscape Navigator 3.0 beta 3引入的新方法) 
  focus() 把指定的窗口带到前台(另一个新方法) 
  open() 打开一个新窗口 
  prompt() 打开一个Prompt对话框,用户可向该框键入文本,并把键入的文本返回到脚本 
  setTimeout() 等待一段指定的毫秒数时间,然后运行指令事件处理程序事件处理程序 
  Onload() 页面载入时触发 
  Onunload() 页面关闭时触发 
区别:用户不能改变document.location(因为这是当前显示文档的位置)。但是,可以改变window.location (用其它文档取代当前文档)window.location本身也是一个对象,而document.location不是对象

window.location和document.location的区别分析的更多相关文章

  1. js中的 window.location、document.location、document.URL 对像的区别(转载)

    原文:http://www.cr173.com/html/18417_1.html 当我们需要对html网页进行转向的时候或是读取当前网页的时候可以用到下面三个对像: window.location. ...

  2. JavaScript中的global对象,window对象以及document对象的区别和联系

    JavaScript中的global对象,window对象以及document对象的区别和联系 一.概念区分:JavaScript中的global对象,window对象以及document对象 1.g ...

  3. window.onload和$(document).ready()的区别

    window.onload和$(document).ready()的区别,如下表所示   window.onload $(document).ready() 执行时间 在页面所有内容(图片.文件)加载 ...

  4. $(window).height() 和 $(document).height()的区别

    $(window).height() 和 $(document).height()的区别 $(window).height()代表了当前可见区域的大小,$(document).height()则代表了 ...

  5. window对象与document对象的区别

    [window对象] 它是一个顶层对象,而不是另一个对象的属性,即浏览器的窗口. 属性 defaultStatus 缺省的状态条消息 document 当前显示的文档(该属性本身也是一个对象) fra ...

  6. window.onload 与 $(document).ready() 的区别

    以浏览器装载文档为例,在页面加载完毕后,浏览器会通过 JavaScript 为 DOM 元素添加事件.在常规的 JavaScript 代码中,通常使用 window.onload 方法 ,而在 jQu ...

  7. $(window).load与$(document).ready的区别

    刚好今天学了用jQuery实现瀑布流的用法,但加载时发现了一个小小的问题,那就是分别用$(window).load与$(document).ready实现加载时,$(document).ready的布 ...

  8. window.onload和document.ready的区别

    window.onload和document.ready虽然两个方法的运行效果都一样,但他们之间是存在着区别的: 一.从执行的时间 window.onload在dom文档结构加载完毕以后就可以执行,不 ...

  9. Console.log,Window.alert,Document.write三者区别

    1.Console.log不会阻断程序继续进行,在控制台可以看到测试结果. 2.Window.alert弹出框会阻断程序运行,在弹出框可以看到测试结果. 3.Document.write不会阻断程序继 ...

随机推荐

  1. merge sort 的javascript实现

    递归 上一篇blog里,用js实现了quicksort算法,quicksort算法是一个递归调用过程. 递归是一种非常强大的编程思想,它广泛的的存在于各种语言当中,尤其lisp的各种方言中,大量的使用 ...

  2. Spring学习(七)——开发Web Service的几种方式

    本文作者在学习使用Java开发Web Service(不包括Restful)时,由于不知道Java有这么多框架支持开发Web Service一度陷入迷惘,不知道这些框架各有 什么不同,各有什么优缺点. ...

  3. Hadoop各个组件与端口

    组件 Daemon 端口 配置 说明 HDFS DataNode 50010 dfs.datanode.address datanode服务端口,用于数据传输 HDFS DataNode 50075 ...

  4. 解决ImageCropperComponent发布报错

    ng serve可以正常运行,npm run build 就会报错: ERROR in : Type ImageCropperComponent in -/node_modules/ng2-img-c ...

  5. Git命令行学习积累

    1.远程分支拉取到本地 $ git checkout -b develop origin/develop //检出远程的develop分支到本地 2.本地分支推送到远程 $ git checkout ...

  6. asp.net web 应用站点支持域账户登录

    1.IIS站点应用程序池设置管道模式为classic模式,identity设置为管理员账户 2.站点验证设置,只打开windows验证,其他都关闭 3.应用程序配置web.config配置如下: &l ...

  7. 2、Windows下安装配置Redis

    windows下redis软件开源安装包挂载到github上,下面将详细介绍如何在windows下安装redis服务器 下载地址:https://github.com/MSOpenTech/redis ...

  8. 自动统计安卓log中Anr,Crash,Singnal出现数量的Python脚本 (转载)

    自动统计安卓log中Anr,Crash,Singnal出现数量的Python脚本   转自:https://www.cnblogs.com/ailiailan/p/8304989.html 作为测试, ...

  9. 【OCP-12c】CUUG 071题库考试原题及答案解析(20)

    20.choose two Examine the description of the EMP_DETAILS table given below: Which two statements are ...

  10. Java中Io类-File类的构造方法

    package com.hxzy.IOSer;import java.io.*;public class Demo02 { public static void main(String[] args) ...