几种location.href的区别 js实现网页防止被iframe框架嵌套功能

首先我们了解一下:window.location.href、location.href、self.location.href、parent.location.href、top.location.href他们的区别与联系,简单的说:几种location.href的区别 js实现网页被iframe框架功能
"window.location.href"、"location.href"、"self.location.href"是本页面跳转
"parent.location.href"是上一层页面跳转
"top.location.href"是最外层的页面跳转

举个例子说明(如上图):
如果A,B,C,D都是普通页面,D是C的iframe,C是B的iframe,B是A的iframe,
如果D中js这样写:
"window.location.href"、"location.href":D页面跳转
"parent.location.href":C页面跳转
"top.location.href":A页面跳转

如果D页面中有form的话:
<form>:  form提交后D页面跳转
<form target="_blank">:  form提交后弹出新页面
<form target="_parent">:  form提交后C页面跳转
<form target="_top"> :  form提交后A页面跳转

关于页面刷新,D 页面中这样写:
"parent.location.reload();": C页面刷新  (当然,也可以使用子窗口的 opener 对象来获得父窗口的对象:window.opener.document.location.reload(); )
"top.location.reload();": A页面刷新

现在回头看看,js实现网页防止被iframe框架功能就很简单了。假设frame.html文件中框架了content.html文件,那么思路是这样的:在content.html中加入js检测自己本身top.location.href地址,是否为top.location.href地址。如果是则没被嵌套,如果否的话即被嵌套了,这是我们可以提示一下。预览效果  下载源文件

网页防止被框架方法代码:
<script language="javascript">
if(top.location!==self.location){
WarningTxt1 = "content页面被iframe了!";
WarningTxt2 = "我们跳出iframe,直接访问content页面吧!";
alert(WarningTxt1);
alert(WarningTxt2);
top.location.href=self.location.href;
}
</script>

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
window.location.hrefiframe区别在于它们的作用和用途不同。 window.location.href是指当前窗口或标签页的URL地址。它可以用来获取或设置当前窗口的URL。通过设置window.location.href可以跳转到新的URL地址。例如,当用户点击一个链接或提交一个表单时,可以通过设置window.location.href来导航到新的页面。 而iframe是一种HTML元素,可以在一个页面中嵌入另一个页面。通过使用iframe,可以在一个页面中显示另一个页面的内容。使用iframe可以实现页面内的嵌套和加载外部页面等功能。当页面中存在iframe时,可以通过修改iframe的src属性来加载不同的页面内容。 总结来说,window.location.href用于管理当前窗口的URL地址,而iframe用于在页面中嵌入另一个页面的内容。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [关于js中window.location.href,location.href,parent.location.href,top.location.href的用法](https://blog.csdn.net/s13596191285/article/details/128459046)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [关于js中[removed].href,location.href,parent.location.href,top.location.href的用法与区别](https://download.csdn.net/download/weixin_38640984/13589277)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [详解js location.href和window.open的几种用法和区别](https://download.csdn.net/download/weixin_38683895/13681348)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值