JavaScript中的Location地址对象


Posted in Javascript onJanuary 16, 2008

location 地址对象 它描述的是某一个窗口对象所打开的地址。要表示当前窗口的地址,只需要使用“location”就行了;若要表示某一个窗口的地址,就使用“<窗口对象>.location”。先前写了一片用window.location.href实现刷新另个框架页面 ,特此我看了一下locaiton的详细用法,对此有点改进,具体如下:  

注意:属于不同协议或不同主机的两个地址之间不能互相引用对方的 location 对象,这是出于安全性的需要。例如,当前窗口打开的是“www.a.com”下面的某一页,另外一个窗口(对象名为:bWindow)打开的是“www.b.com”的网页。如果在当前窗口使用“bWindow.location”,就会出错:“没有权限”。这个错误是不能用错误处理程序(Event Handler,参阅 onerror 事件)来接收处理的。

第一、简单介绍一下location属性、用法以及相关示例:  
Location  
包含了关于当前 URL 的信息。location对象描述了与一个给定的 Window 对象关联的完整 URL。location 对象的每个属性都描述了 URL 的不同特性。
通常情况下,一个 URL 会有下面的格式:协议//主机:端口/路径名称#哈希标识?搜索条件
例如:http://www.ijavascript.cn/jiaocheng/index.html#topic1?x=7&y=2 这些部分是满足下列需求的:

“协议”是 URL 的起始部分,直到包含到第一个冒号。   

“主机”描述了主机和域名,或者一个网络主机的 IP 地址。  

“端口”描述了服务器用于通讯的通讯端口。   

路径名称描述了 URL 的路径方面的信息。  

“哈希标识”描述了 URL 中的锚名称,包括哈希掩码(#)。此属性只应用于 HTTP 的 URL。   

“搜索条件”描述了该 URL 中的任何查询信息,包括问号。此属性只应用于 HTTP 的 URL。“搜索条件”字符串包含变量和值的配对;每对之间由一个“&”连接。

   

属性概览  

protocol 返回地址的协议,取值为 'http:','https:','file:' 等等。

hostname 返回地址的主机名,例如,一个“http://www.microsoft.com/china/”的地址,location.hostname == 'www.microsoft.com'。

port 返回地址的端口号,一般 http 的端口号是 '80'。

host 返回主机名和端口号,如:'www.a.com:8080'。

pathname 返回路径名,如“http://www.a.com/b/c.html”,location.pathname == 'b/c.html'。

hash 返回“#”以及以后的内容,如“http://www.a.com/b/c.html#chapter4”,location.hash == '#chapter4';如果地址里没有“#”,则返回空字符串。

search 返回“?”以及以后的内容,如“http://www.a.com/b/c.asp?selection=3&jumpto=4”,location.search == '?selection=3&jumpto=4';如果地址里没有“?”,则返回空字符串。

href 返回以上全部内容,也就是说,返回整个地址。在浏览器的地址栏上怎么显示它就怎么返回。如果想一个窗口对象打开某地址,可以使用“location.href = '...'”,也可以直接用“location = '...'”来达到此目的。

方法概览  

reload() 相当于按浏览器上的“刷新”(IE)或“Reload”(Netscape)键。

replace() 打开一个 URL,并取代历史对象中当前位置的地址。用这个方法打开一个 URL 后,按下浏览器的“后退”键将不能返回到刚才的页面。

  

二、location之页面跳转js如下:  
//简单跳转
function gotoPage(url) {  
// eg. var url = "newsview.html?catalogid="+catalogID+"&pageid="+pageid;  
window.location = url;  

// 对location用法的升级,为单个页面传递参数
function goto_catalog(iCat) {  
if(iCat<=0) {  
top.location = "../index.aspx"; // top出去  
} else {  
window.location = "../newsCat.aspx?catid="+iCat;  
}
}

// 对指定框架进行跳转页面,二种方法皆可用
function goto_iframe(url) {  
parent.mainFrame.location = "../index.aspx"; //  
// parent.document.getElementById("mainFrame").src = "../index.aspx";// use dom to change page // 同时我增加了dom的写法  

// 对指定框架进行跳转页面,因为 parent.iframename.location="../index.aspx"; 方法不能实行,主要是 "parent.iframename" 中的iframename在js中被默认为节点,而不能把传递过来的参数转换过来,所以用dom实现了该传递二个参数的框架跳转页面,希望那位仁兄不吝赐教!
function goto_iframe(iframename,url)  {  
parent.document.getElementById(iframename).src = "../index.aspx";// use dom to change page by iframeName 
//}  

// 回到首页
function gohome() {  
top.location = "/index.aspx";  

Javascript 相关文章推荐
JavaScript 模仿vbs中的 DateAdd() 函数的代码
Aug 13 Javascript
使用jQuery快速解决input中placeholder值在ie中无法支持的问题
Jan 02 Javascript
jQuery实现下拉框左右选择的简单实例
Feb 22 Javascript
javascript的switch用法注意事项分析
Feb 02 Javascript
javascript与css3动画结合使用小结
Mar 11 Javascript
jQuery团购倒计时特效实现方法
May 07 Javascript
JavaScript中的Repaint和Reflow用法详解
Jul 27 Javascript
在Vue中使用Compass的方法
Mar 02 Javascript
vue+express 构建后台管理系统的示例代码
Jul 19 Javascript
vue.js图片转Base64上传图片并预览的实现方法
Aug 02 Javascript
利用Bootstrap Multiselect实现下拉框多选功能
Apr 08 Javascript
addEventListener()和removeEventListener()追加事件和删除追加事件
Dec 04 Javascript
JavaScript中的History历史对象
Jan 16 #Javascript
JavaScript中的Window窗口对象
Jan 16 #Javascript
JavaScript中的Screen屏幕对象
Jan 16 #Javascript
JavaScipt基本教程之JavaScript语言的基础
Jan 16 #Javascript
JavaScipt基本教程之前言
Jan 16 #Javascript
JavaScript中Math对象使用说明
Jan 16 #Javascript
语义化 H1 标签
Jan 14 #Javascript
You might like
用PHP中的 == 运算符进行字符串比较
2006/11/26 PHP
php下实现在指定目录搜索指定类型文件的函数
2008/10/03 PHP
ThinkPHP模板输出display用法分析
2014/11/26 PHP
ecshop适应在PHP7的修改方法解决报错的实现
2016/11/01 PHP
THINKPHP截取中文字符串函数实例代码
2017/03/20 PHP
laravel实现Auth认证,登录、注册后的页面回跳方法
2019/09/30 PHP
Save a File Using a File Save Dialog Box
2007/06/18 Javascript
JavaScript使用IEEE 标准进行二进制浮点运算产生莫名错误的解决方法
2011/05/28 Javascript
js post提交调用方法
2014/02/12 Javascript
JS获取地址栏参数的几种方法小结
2014/02/28 Javascript
JavaScript获取当前cpu使用率的方法
2015/12/15 Javascript
JavaScript绑定事件监听函数的通用方法
2016/05/14 Javascript
Javascript在IE和Firefox浏览器常见兼容性问题总结
2016/08/03 Javascript
javascript稀疏数组(sparse array)和密集数组用法分析
2016/12/28 Javascript
详解nodeJS之路径PATH模块
2017/05/31 NodeJs
原生JS实现隐藏显示图片 JS实现点击切换图片效果
2021/01/27 Javascript
基于ajax和jsonp的原生封装(实例)
2017/10/16 Javascript
python中int与str互转方法
2018/07/02 Python
Python Requests库基本用法示例
2018/08/20 Python
python 内置模块详解
2019/01/01 Python
使用Python控制摄像头拍照并发邮件
2019/04/23 Python
纯CSS3制作的鼠标悬停时边框旋转
2017/01/03 HTML / CSS
HTML5输入框下拉菜单功能的示例代码
2020/09/08 HTML / CSS
舞会礼服和舞会鞋:PromGirl
2019/04/22 全球购物
详解如何解决使用JSON.stringify时遇到的循环引用问题
2021/03/23 Javascript
仓库理货员岗位职责
2013/12/18 职场文书
更夫岗位责任制
2014/02/11 职场文书
机械工程学院大学生求职信
2014/05/25 职场文书
毕业生找工作求职信
2014/08/05 职场文书
计算机专业自荐信范文
2015/03/26 职场文书
2015年保洁员工作总结
2015/05/04 职场文书
火烧圆明园的观后感
2015/06/03 职场文书
餐厅营销的秘密:为什么老顾客会流水?
2019/08/08 职场文书
PyQt5 QThread倒计时功能的实现代码
2021/04/02 Python
python3实现无权最短路径的方法
2021/05/12 Python
解决Git推送错误non-fast-forward的方法
2022/06/25 Servers