0 0

js控制iframe弹出窗口10

有这样一种情况:
我在iframe里面嵌了一个网页(这个网页可能是来自网络)
如果网页里面含有像
<script>
function changelocation(){
parent.location.href="b.htm";
}
</script>
</head>

<body>
  <a href="#" onclick="changelocation();">跳转</a>
</body>
这样的代码,那页面跳转之后就会覆盖掉了原来的iframe页,我想让这个跳转之后的
页面在iframe里面显示。但是只能是自己另外建一个js文件往这个网页上注入,
因为这个网页不一定是我写的,可能会是一个网络资源。
求解决办法。附件是需求用的一个例子

问题补充:
小哀好困 写道
亲,很好玩的问题

想到两种思路,分享一下,同时也很想知道你现在的解决办法

第一种:


在父窗口(当子窗口加载完成)直接把 子窗口的parent对象赋给自己

e.g iframe.contentWindow.parent=iframe.contentWindow

在ff下测试成功,但后来发现parent在ie下是只读属性

所以。。。



另外一种,比较变态了


假设a是父页面,c是目标页(iframe) 

假如我们加一层iframe b 变成 a->b->c 

当c调用parent的时候,b地址变了,在a看来,还是同一frame

这是,需要有个监听器,监听b的地址,假如它的地址和我们初始化给他的不同,被c改变

那么,删除b,在创建个空b,再用b现在的地址创建c

就是说,始终保持,c(目标页)和父页的关系式 a->b->c


亲:
第一种跟我最开始的做法一样,但是后来发现这种情况只能是本地文件会有效,注入到别的资源上就不起作用了。
第二种我也想了,但是不会做。
还有一个是我在这个来源于网络的网页上用注入的方式让他的<script>标签引入我的js,用firebug看的话,已经写入进去,但是运行起来就不会执行。
2012年4月12日 22:54
  • js.rar (988 Bytes)
  • 下载次数: 24

2个答案 按时间排序 按投票排序

0 0

采纳的答案

关于方法一,

亲,你所谓的其他资源肯定是跨域访问,而且连基域应该都是不同的

解决办法是,你可以在java端生成一个代理

就是通过java发送httprequest去把页面拿来,在返回给iframe

这样你就可以操作该iframe的对象了

但似乎还是没法解决ie问题


同理,方法也必须使用这种代理方式假如跨域访问情况存在,因为你要访问iframe的window.location 属性

2012年4月15日 01:11
0 0

亲,很好玩的问题

想到两种思路,分享一下,同时也很想知道你现在的解决办法

第一种:


在父窗口(当子窗口加载完成)直接把 子窗口的parent对象赋给自己

e.g iframe.contentWindow.parent=iframe.contentWindow

在ff下测试成功,但后来发现parent在ie下是只读属性

所以。。。



另外一种,比较变态了


假设a是父页面,c是目标页(iframe) 

假如我们加一层iframe b 变成 a->b->c 

当c调用parent的时候,b地址变了,在a看来,还是同一frame

这是,需要有个监听器,监听b的地址,假如它的地址和我们初始化给他的不同,被c改变

那么,删除b,在创建个空b,再用b现在的地址创建c

就是说,始终保持,c(目标页)和父页的关系式 a->b->c

2012年4月13日 12:33

相关推荐

    弹出窗口__iframe

    在IT行业中,弹出窗口和iframe是网页设计与开发中常见的技术元素,它们在提供交互性和用户体验方面扮演着重要角色。下面将详细解释这两个概念及其相关的知识点。 首先,弹出窗口通常指的是在用户进行特定操作(如...

    js_弹出窗口_iframe

    在"js_弹出窗口_iframe"这个主题中,我们将深入探讨如何使用JavaScript来实现弹出窗口以及如何利用`iframe`技术。 首先,我们来看JavaScript中的弹出窗口。主要有三种类型的弹出窗口:`alert()`,`prompt()`和`...

    iframe弹出框遮罩父类页面

    总的来说,"iframe弹出框遮罩父类页面"是一个常见的前端交互需求,通过合理使用`iframe`、JavaScript和CSS,以及像EasyUI这样的库,可以实现高效、简洁的解决方案。理解并掌握这些知识点对于提升网页交互体验至关...

    iframe弹出窗

    在网页开发中,"iframe弹出窗"是一种常见的技术手段,用于在不离开当前页面的情况下显示额外的内容或者功能。...通过合理的CSS布局和JavaScript控制,我们可以创建出符合需求、用户体验良好的弹出窗口。

    弹出窗口_背景固定_iframe

    3. 使用JavaScript或者jQuery等库来控制弹出窗口的显示和隐藏。这包括监听用户的交互事件,如点击按钮,然后动态地添加或移除弹出窗口的HTML元素,以及设置iframe的src属性以加载相应的内容。 4. 为了增强用户体验,...

    弹出窗口_iframe

    标题 "弹出窗口_iframe" 指向的是在网页设计中使用IFrame(内联框架)技术实现弹出窗口的场景。...通过学习和实践这些知识点,开发者可以有效地在自己的项目中集成IFrame弹出窗口功能,提供更丰富的交互体验。

    弹出窗口_iframe_最终版

    在IT行业中,弹出窗口和iframe是网页设计和开发中常见的技术元素。"弹出窗口_iframe_最终版"这个项目可能是一个优化过的解决方案,针对不同的浏览器提供了特定的处理方式,以实现统一的用户体验。接下来,我们将深入...

    javascript经典特效---无边弹出窗口全集.rar

    实现弹出窗口的JavaScript技术主要包括DOM操作、事件处理和CSS样式控制。以下是一些可能涵盖的知识点: 1. **DOM操作**:JavaScript通过Document Object Model (DOM)来操作HTML元素。创建弹出窗口需要动态创建HTML...

    JS弹出窗口使用说明

    JavaScript(简称JS)是一种轻量级的编程语言,广泛用于网页和网络应用开发,而弹出窗口是JS中常见的交互方式。这篇文档主要介绍了名为lhgdialog的JS弹出窗口控件的使用方法。 lhgdialog控件由一系列文件组成,它们...

    关于js中alert弹出窗口文本换行问题简单详细说明.docx

    JS 中 Alert 弹出窗口文本换行问题详细说明 在 JavaScript 中,Alert 弹出...* 禁止 iframe 页面的全部 JS 脚本,如 alert 及弹出窗口等 * JS+CSS 实现带关闭按钮 DIV 弹出窗口的方法 * JavaScript 实现弹出窗口效果

    lhgDialog JS弹出窗口 v4.0.0

    lhgdialog是一功能强大的简单迷你并且高效的弹出窗口组件。 专为大型弹出窗口定制 相对于网上其它弹出窗口组件主要功能是提示信息来说,本组件主要是用来制作窗口中内容较多,页面比较复杂的窗口。本组件的窗口...

    js 弹出窗口

    在JavaScript(JS)中,创建弹出窗口是一种常见的交互设计,可以用来显示额外的信息或执行特定功能。在给定的标题“js 弹出窗口”和描述中,我们可以看到几个关键点:弹出窗口的加载、遮罩效果、拖动功能、自动关闭...

    无限制弹出窗口(JS)

    标题“无限制弹出窗口(JS)”指的是在网页中利用JavaScript实现的一种技术,它允许开发者创建无限数量或在用户浏览过程中持续出现的弹出窗口。这种技术可能会被滥用,导致用户体验下降,甚至被认为是恶意行为,如广告...

    JS控制弹出页面窗口控件(openWin)

    采用两种弹出窗口实现方式: ...弹出窗口关闭的JS方法:window.close(); 示例请参照:demo.html 窗口内分页方法请参照:demoInPage.jsp (注:项目中使用时需要修改JS文件中,iFrame.jsp页面的路径)

    div+iframe弹出窗口:可最大化、最小化,可拖拽,带遮罩功能

    div+iframe做出的弹出窗口,效果等同于模态窗口。弹出窗口可最大化、最小化,可拖拽。带遮罩功能。 解决替换模态窗口,避免模态调模态出现的一系列问题:session丢失,提交返回,调父类方法层级多了或者多页面调的...

    点击弹出窗口网页背景变暗且不可点的效果(二):iframe实现

    “点击弹出窗口网页背景变暗且不可点的效果(iframe实现).htm”可能是展示完整效果的HTML文件,而“iframe1.html”可能是`iframe`内容的源文件,而“dragiframe.js”则可能包含了实现拖动功能的JavaScript代码。...

    弹出窗口_iframe_最终版本

    总结起来,"弹出窗口_iframe_最终版本"是一个关注于在各种浏览器环境下,特别是IE7到IE9,实现弹出窗口内iframe固定以及后方页面滚动控制的解决方案。这涉及到了前端开发中的跨浏览器兼容性问题、CSS布局技巧以及...

    弹出窗口灰色背景

    在`asyncbox.js`中,我们可以预期找到与弹出窗口相关的函数,比如打开和关闭窗口的逻辑,以及灰色背景的添加和移除。可能的函数名包括`showBox`、`hideBox`、`createMask`和`removeMask`等。此外,代码可能会使用...

    点击弹出窗口网页背景变暗且不可点的效果(三):iframe实现

    标题 "点击弹出窗口网页背景变暗且不可点的效果(三):iframe实现" 涉及的是在网页设计中创建一种用户体验优化的技巧。这种技巧通常用于弹窗或者模态对话框,当用户点击弹出窗口时,背景页面会变暗并且变为不可交互...

    弹出窗口_总样式

    6. **API控制**:通过JavaScript API,可以编程方式控制弹出窗口的打开、关闭和内容更新。 在实际应用中,我们可以结合HTML、CSS和JavaScript来构建弹出窗口。首先,在HTML中设置触发弹出窗口的元素,然后在CSS中...

Global site tag (gtag.js) - Google Analytics