JS问题(window对象)
location.href属性包含的URL与document.URL属性相同,但document.URL的属性只能返回不能修改,儿location.href的属性是可以更...
location.href属性包含的URL与document.URL属性相同,但document.URL的属性只能返回不能修改,儿location.href的属性是可以更改的,因此可以使用loction.href来打开新页面。
这句话怎么理解呢?
下面是我的理解,location是地址对象,因此location.href指的就是域名
例如:http://www.baidu.com
而document是文档对象,因此document.URL指的就是文档的路径
例如:ABCD.html存在与桌面上,document.URL就是C:\Documents and Settings\Administrator\桌面
而书上说,location.href属性包含的URL与document.URL属性相同,这句话怎么理解啊 按照我的理解 好像不是那样子的啊 还有就是 document.URL的属性只能返回不能修改,而location.href的属性是可以修改的,因此可以使用location.href来打开新页面 这又是怎么回事啊?
+++++++++++++++ 一定要弄个例子啊 +++++++++++++++++JS例子:
<html>
<head>
<title>
</title>
<script language="java/language">
//解释代码
</script>
</head>
</html>
麻烦高人给我这个菜鸟指点指点,回答让我明白了,我高分悬赏!!谢谢了 展开
这句话怎么理解呢?
下面是我的理解,location是地址对象,因此location.href指的就是域名
例如:http://www.baidu.com
而document是文档对象,因此document.URL指的就是文档的路径
例如:ABCD.html存在与桌面上,document.URL就是C:\Documents and Settings\Administrator\桌面
而书上说,location.href属性包含的URL与document.URL属性相同,这句话怎么理解啊 按照我的理解 好像不是那样子的啊 还有就是 document.URL的属性只能返回不能修改,而location.href的属性是可以修改的,因此可以使用location.href来打开新页面 这又是怎么回事啊?
+++++++++++++++ 一定要弄个例子啊 +++++++++++++++++JS例子:
<html>
<head>
<title>
</title>
<script language="java/language">
//解释代码
</script>
</head>
</html>
麻烦高人给我这个菜鸟指点指点,回答让我明白了,我高分悬赏!!谢谢了 展开
展开全部
首先声明,我不怎么懂JS语言,帮你在网上找了点,你看看,或许有帮助。
对 document.URL 与 location.href 区别的质疑
有文说 document.URL 与 location.href 二者有两点区别:
一、重定向服务器重定向后有可能使 document.URL 变动,但 location.href 指的永远是访问该网页时用的 URL。
二、读写问题,document.URL 只读,location.href 可写。
而我测试后结果并不是这样的。
第一个区别测试:
一个页面 A,访问页面 A 利用 Response.Redirect(客户端重定向)重定向到页面 C。
一个页面 B,访问页面 B 利用 Server.Transfer (服务器端重定向)重定向到页面 C。
页面 C 代码如下:
alert("document.URL=" + document.URL + "\r\n" +
"location.href=" + location.href);
访问页面 A 时,得到的结果都是 C 的 URL;访问页面 B 时,得到的结果都是 B 的 URL。也就是说 document.URL 和 location.href 在此点上无区别。
第二个区别测试:
document.URL = "D.htm";
上述代码仍将页面带到了 D.htm,说明 document.URL 并不是只读的。
总结
二者在上述两个问题上无实质性区别。
对 document.URL 与 location.href 区别的质疑
有文说 document.URL 与 location.href 二者有两点区别:
一、重定向服务器重定向后有可能使 document.URL 变动,但 location.href 指的永远是访问该网页时用的 URL。
二、读写问题,document.URL 只读,location.href 可写。
而我测试后结果并不是这样的。
第一个区别测试:
一个页面 A,访问页面 A 利用 Response.Redirect(客户端重定向)重定向到页面 C。
一个页面 B,访问页面 B 利用 Server.Transfer (服务器端重定向)重定向到页面 C。
页面 C 代码如下:
alert("document.URL=" + document.URL + "\r\n" +
"location.href=" + location.href);
访问页面 A 时,得到的结果都是 C 的 URL;访问页面 B 时,得到的结果都是 B 的 URL。也就是说 document.URL 和 location.href 在此点上无区别。
第二个区别测试:
document.URL = "D.htm";
上述代码仍将页面带到了 D.htm,说明 document.URL 并不是只读的。
总结
二者在上述两个问题上无实质性区别。
参考资料: http://www.cftea.com/c/2008/06/AHJU873HPQSNPGPX.asp
展开全部
引用w3c规范的说明:
document.URL:
URL of type DOMString, readonly The absolute URI [IETF RFC 2396] of the document.
http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/DOM2-HTML.html#html-ID-46183437
location.href:
The value of the href attribute MUST be the absolute URI reference [RFC2396]
use newer URI RFC?
that is the Location's current location. When the href attribute is set, the Location's window MUST navigate to the newly set value.
Must define the term navigate
http://www.w3.org/TR/Window/
从文档描述来看document.url和location.href确实是同样的功能。都是显示当前绝对路径。
但是document在标准中定义是只读的,因为IE不是遵循w3c标准的浏览器,所以没有严格遵守规则. 你可以用firefox试验一下,document.URL="xxx",肯定报readonly错误的.
document.URL:
URL of type DOMString, readonly The absolute URI [IETF RFC 2396] of the document.
http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/DOM2-HTML.html#html-ID-46183437
location.href:
The value of the href attribute MUST be the absolute URI reference [RFC2396]
use newer URI RFC?
that is the Location's current location. When the href attribute is set, the Location's window MUST navigate to the newly set value.
Must define the term navigate
http://www.w3.org/TR/Window/
从文档描述来看document.url和location.href确实是同样的功能。都是显示当前绝对路径。
但是document在标准中定义是只读的,因为IE不是遵循w3c标准的浏览器,所以没有严格遵守规则. 你可以用firefox试验一下,document.URL="xxx",肯定报readonly错误的.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询