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 相关文章推荐
JS Replace 全部替换字符的用法小结
Dec 24 Javascript
使用jQuery简单实现模拟浏览器搜索功能
Dec 21 Javascript
每天一篇javascript学习小结(属性定义方法)
Nov 19 Javascript
node.js实现博客小爬虫的实例代码
Oct 08 Javascript
JavaScript 中对象的深拷贝
Dec 04 Javascript
QQ跳转支付宝并自动领红包脚本(最新)
Jun 22 Javascript
Javascript格式化并高亮xml字符串的方法及注意事项
Aug 13 Javascript
node.js环境搭建图文详解
Sep 19 Javascript
jquery无缝图片轮播组件封装
Nov 25 jQuery
使用Vue.observable()进行状态管理的实例代码详解
May 26 Javascript
微信小程序仿淘宝热搜词在搜索框中轮播功能
Jan 21 Javascript
vue组件中传值EventBus的使用及注意事项说明
Nov 16 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 Memcached应用实现代码
2010/02/08 PHP
php 数据库字段复用的基本原理与示例
2011/07/22 PHP
thinkphp实现图片上传功能分享
2014/03/04 PHP
WordPress中注册菜单与调用菜单的方法详解
2015/12/18 PHP
如何解决PHP使用mysql_query查询超大结果集超内存问题
2016/03/14 PHP
thinkphp修改配置进入默认首页的方法
2017/02/07 PHP
php利用fsockopen GET/POST提交表单及上传文件
2017/05/22 PHP
thinkPHP框架中layer.js的封装与使用方法示例
2019/01/18 PHP
Add Formatted Text to a Word Document
2007/06/15 Javascript
JavaScript Event事件学习第一章 Event介绍
2010/02/07 Javascript
基于jquery的用鼠标画出可移动的div
2012/09/06 Javascript
jQuery基础框架浅入剖析
2012/12/27 Javascript
JSON字符串和JSON对象相互转化实例详解
2017/01/05 Javascript
[01:17]辉夜杯战队访谈宣传片—EHOME
2015/12/25 DOTA
Python中unittest模块做UT(单元测试)使用实例
2015/06/12 Python
Python中datetime常用时间处理方法
2015/06/15 Python
Python ftp上传文件
2016/02/13 Python
python使用SMTP发送qq或sina邮件
2017/10/21 Python
numpy matrix和array的乘和加实例
2018/06/28 Python
pthon贪吃蛇游戏详细代码
2019/01/27 Python
解决Pandas的DataFrame输出截断和省略的问题
2019/02/08 Python
pywinauto自动化操作记事本
2019/08/26 Python
logging level级别介绍
2020/02/21 Python
美国珠宝精品店:Opulent Jewelers
2019/08/20 全球购物
巴塞罗那观光通票:Barcelona Pass
2019/10/30 全球购物
实习单位接收函
2014/01/11 职场文书
业务总经理岗位职责
2014/02/03 职场文书
运动会广播稿100字
2014/09/14 职场文书
工作失职检讨书500字
2014/10/17 职场文书
2014年销售助理工作总结
2014/12/01 职场文书
二审代理词范文
2015/05/25 职场文书
2015年小学教导处工作总结
2015/05/26 职场文书
MySQL 逻辑备份与恢复测试的相关总结
2021/05/14 MySQL
eclipse创建项目没有dynamic web的解决方法
2021/06/24 Java/Android
vue3使用vuedraggable实现拖拽功能
2022/04/06 Vue.js
Docker容器harbor私有仓库部署和管理
2022/08/05 Servers