javascript - 在新选项卡中打开 iframe 内容时,使其在位于页面内的 iframe 中打开
问题描述
我有在 iframe 中打开的各种页面。我想避免这样的情况,即如果用户在新选项卡中打开其中一个页面,它会单独作为页面打开。相反,我希望父页面在新选项卡中打开,并嵌入 iframe 内容。
我有一些来自我构建的旧网站的 javascript,在使用框架执行此操作时可以完美运行。我没有编写脚本,并且有点不确定如何更新它。此脚本进入父框架:
var fname="mainFrame";
window.onload=function(){
var d=document.location.search;
if(d!='')self.frames[fname].document.location.href=d.substring(d.lastIndexOf('?')+1,d.length);
}
这在子框架中:
if(self.location==top.location)self.location="index.htm?article.htm";
如何修改此脚本以使用 iframe?鉴于我已经使用该脚本十多年了,它仍然是最好或最有效的方法吗?我正在使用 Bootstrap,所以不要介意 jQuery 解决方案,如果它比上面的 javascript 方法更好。
解决方案
知道了!
window.onload=function(){
var ifrm = document.getElementById('newsframe');
var d=document.location.search;
if(d!='')ifrm.src=d.substring(d.lastIndexOf('?')+1,d.length);
}
推荐阅读
- python - 在python中找到切比雪夫多项式的根
- java - 由于 spring 安全性,无法访问 spring-boot 项目中的资产
- go - Cobra cli 无法初始化新工具
- asp.net-core - 不同项目中的 MiniProfiler
- python - TypeError:运行我的模型时类型提升无效
- regex - grep 的贪婪行为
- android - AppCompatTextView 内的文本超出范围
- python - 在保存在 Django 模型中之前,有什么方法可以从 ManyToManyField 中获取选定的值
- python - Resample() 为不存在的日期返回不正确的数字
- ssl - Cert-Manager 为 AKS 提供自己的 SSL 证书