前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >top.location.href和localtion.href代码剖析

top.location.href和localtion.href代码剖析

作者头像
用户9184480
发布2024-12-19 14:32:09
发布2024-12-19 14:32:09
7500
代码可运行
举报
文章被收录于专栏:云计算linux云计算linux
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
复制
$("#updateform").ajaxSubmit(function(data) {    
                             alert(data);
                        if(data){
                            self.location.href="/moocgd/BasicServlet?method=getBasicinfo&userid=${user.id}";
                        }
                        });

针对上述代码段,中的self.location.href,进行分析

top.location.href=”url” 在顶层页面打开url(跳出框架)

self.location.href=”url” 仅在本页面打开url地址   

parent.location.href=”url”   在父窗口打开Url地址   

this.location.href=”url”    用法和self的用法一致

if (top.location == self.location) 判断当前location 是否为顶层来 禁止frame引用  如果页面当中有自定义的frame的话,也可以将parent self top换为自定义frame的名称 效果就是在自定义frame窗口打开url地址

实际中可能这样使用

if(top !== self){ top.location.href = location.href; } 禁止frame引用

以下是从网上找到的一个例子,不是很直观, 我加了上面那三行代码, 可以先去掉, 再加上, 看一下效果,就很清楚了 以下是top.htm 代码 <script language=javascript> function rs(){

if(top !== self){

top.location.href = location.href;

}

parent.left.location.href="top.htm" parent.bot.location.href="top.htm" } < /script> < input type=button name=name value="ksdj" οnclick=rs();>

以下是一个随意文件名的htm文件: <FRAMESET COLS="150,*"> < FRAME SRC="left.htm" name=left> < FRAMESET ROWS="150,*"> < FRAME SRC="top.htm" name=top> < FRAME SRC="bot.htm" name=bot> < /FRAMESET> < /FRAMESET> 你自己试试,我想你要的可能就是这样的效果!

top表示主窗口,location表示当前窗口,如果你的文件只有一个框架,没有iframe和frmaeset,那么是完全一致的,没有区别。

top.location是在顶层frame中打开新页 window.location是在当前frame中打开新页

parent.location 在当前窗口的父窗口打开Url地址

top表示主窗口,location表示当前窗口,如果你的文件只有一个框架,没有iframe和frmaeset,那么是完全一致的,没有区别。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-03-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档