JavaScript入门教程(8) Location地址对象


Posted in Javascript onJanuary 31, 2009

若要表示某一个窗口的地址,就使用“<窗口对象>.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.webjx.com/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 相关文章推荐
IE6不能修改NAME问题的解决方法
Sep 03 Javascript
JSON序列化与解析原生JS方法且IE6和chrome测试通过
Sep 05 Javascript
js设置function参数默认值(适合没有传参情况)
Feb 24 Javascript
一个html5播放视频的video控件只支持android的默认格式mp4和3gp
May 08 Javascript
jquery和css3实现的炫酷时尚的菜单导航
Sep 01 Javascript
javascript控制图片播放的实现代码
Jul 29 Javascript
浅谈addEventListener和attachEvent的区别
Jul 14 Javascript
AngularJS 应用身份认证的技巧总结
Nov 07 Javascript
Vue实现底部侧边工具栏的实例代码
Sep 03 Javascript
命令行批量截图Node脚本示例代码
Jan 25 Javascript
微信小程序 如何保持登录状态
Aug 16 Javascript
JavaScript设计模式之策略模式实现原理详解
May 29 Javascript
JavaScript入门教程(7) History历史对象
Jan 31 #Javascript
JavaScript入门教程(6) Window窗口对象
Jan 31 #Javascript
JavaScript入门教程(5) js Screen屏幕对象
Jan 31 #Javascript
JavaScript入门教程(3) js面向对象
Jan 31 #Javascript
JavaScript入门教程(2) JS基础知识
Jan 31 #Javascript
JavaScript入门教程(1) 什么是JS
Jan 31 #Javascript
JavaScript库 开发规则
Jan 31 #Javascript
You might like
PHP与已存在的Java应用程序集成
2006/10/09 PHP
PHP中用正则表达式清除字符串的空白
2011/01/17 PHP
php中根据某年第几天计算出日期年月日的代码
2011/02/24 PHP
php实现的常见排序算法汇总
2014/09/08 PHP
PHP面向对象详解(三)
2015/12/07 PHP
Laravel框架控制器的middleware中间件用法分析
2019/09/30 PHP
使用javascript访问XML数据的实例
2006/12/27 Javascript
jQuery is()函数用法3例
2014/05/06 Javascript
如何调试异步加载页面里包含的js文件
2014/10/30 Javascript
js实现文字跟随鼠标移动而移动的方法
2015/02/28 Javascript
js实现具有高亮显示效果的多级菜单代码
2015/09/01 Javascript
浅析jQuery移动开发中内联按钮和分组按钮的编写
2015/12/04 Javascript
jquery+css3实现熊猫tv导航代码分享
2018/02/12 jQuery
JavaScript(js)处理的HTML事件、键盘事件、鼠标事件简单示例
2019/11/19 Javascript
Angular value与ngValue区别详解
2019/11/27 Javascript
js模拟实现百度搜索
2020/06/28 Javascript
Python中使用装饰器和元编程实现结构体类实例
2015/01/28 Python
Python格式化压缩后的JS文件的方法
2015/03/05 Python
Python中正则表达式详解
2017/05/17 Python
实例讲解Python中浮点型的基本内容
2019/02/11 Python
对Python定时任务的启动和停止方法详解
2019/02/19 Python
python基于SMTP协议发送邮件
2019/05/31 Python
python命令行参数用法实例分析
2019/06/25 Python
详解python中的index函数用法
2019/08/06 Python
python matplotlib 绘图 和 dpi对应关系详解
2020/03/14 Python
jupyter notebook 的工作空间设置操作
2020/04/20 Python
Python matplotlib读取excel数据并用for循环画多个子图subplot操作
2020/07/14 Python
Python利用pip安装tar.gz格式的离线资源包
2020/09/14 Python
Python解析m3u8拼接下载mp4视频文件的示例代码
2021/03/03 Python
施华洛世奇加拿大官网:SWAROVSKI加拿大
2018/06/03 全球购物
奥巴马获胜演讲稿
2014/05/15 职场文书
学校政风行风整改方案
2014/10/25 职场文书
最感人的道歉情书
2015/05/12 职场文书
房屋所有权证明
2015/06/19 职场文书
2015年市场营销工作总结
2015/07/23 职场文书
我的暑假生活作文(五年级)范文
2019/08/07 职场文书