请问如何在一个iFrame中嵌套并显示另一个iFrame
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请问如何在一个iFrame中嵌套并显示另一个iFrame相关的知识,希望对你有一定的参考价值。
我的代码是:
<iframe name="outerIframe">
<iframe name="innerIframe">
</iframe>
</iframe>
(其他参数省略)
这样嵌套对吗?为什么只显示outerIframe?要怎么才能把innerIframe显示出来?
我是想获取一个iFrame的URL然后用来加载另一个iFrame。但我的文件只是个本地运行的html,不能让两个iFrame相互传递参数。我想是否能建立起两个iFrame的父子关系来尝试让他们传递参数。其实最终目的是想得到URL,请问有何高见。谢谢!
追答跨域无解.JS只能访问与当前页面同域名的框架中的内容,不同子域名的要通过domain属性设置允许访问的范围.域名完全不同的无法访问.
追问那请问如果在同一个iFrame中操作可以吗?给outerFrame生成一个child,然后把outerFrame的URL传递给这个child。
追答看不懂你要表达的意思.如果仅仅是使IFRAME跳转到指定URL,可以直接向IFRAME的SRC属性赋值.但如果你要改变该框架中的内容,就必须同域,否则无法实现.
追问不好意思,是有点绕。我是想获取一个URL中一个动态的数字(这个数字在每次点击同一个连接时生成,并且每次都不一样),然后把这个数字连接到另一个URL后面再加载这个新的URL。两个URL都在同一域名下。
追答同域的话,可以直接通过框架页的window.location.search来取得URL参数,通过JS分析取出你想要的部分然后再拼接成新的URL赋值给另一个iframe的src属性,其实整个过程都不算复杂.但如果你是要通过一个本地页面来实现这一操作,这本身就是跨域操作.如果你可以将这个页面上传到你要操作的那两个页的空间中,问题就简单得多了.
参考技术A 你这么写有什么意义呢,你可以把里面的框架写在要引入的页面里面不就可以了。追问只是写一个在本地运行的html文件,iFrame中的内容是别的网站,我无法控制。
追答你是想把引入别人的网站中加上自己的内容?
用iframe框架调用了另一个页面,如何显示指定的某一块区域呢
我在自己的页面(A页面)里面弄了个200*200的框,框里用iframe调用了另一个页面(B页面)的内容,但是显示出来的效果是B页面左上角内容,如何让他显示出来某一块我指定的区域呢,例如显示B页面右侧的一块,该用什么代码呢
谢谢啦先
hspace:网页右上角的的横坐标;
vspace:网页右上角的纵坐标;
frameborder:是否显示边缘;填"1"表示"是",填"0"表示"否"
scrolling:是否出现滚动条;填"1"表示"是",填"0"表示"否"
举例:运行代码框
<div align="left">
<table border="1" width="589"id="table1">
<tr><td>
<IFRAME name=I1 src="http://www.sohu.com/" marginwidth=-100 marginheight=100 vspace=-250 hspace=-760 frameBorder=0 width=2000 scrolling=no height=700 align="left"></IFRAME>
</td></tr>
</table>
</div> 参考技术A 不跨域的话,可以试试改变框架内页面的scrollTop和scrollLeft属性,或是试试调用你要显示元素的scrollIntoView方法. 参考技术B 这个问题我专门研究过,应该是实现不了的,无论是第iframe设置style设置padding或者margin都无效。
以上是关于请问如何在一个iFrame中嵌套并显示另一个iFrame的主要内容,如果未能解决你的问题,请参考以下文章
用iframe嵌套的页面会自动跳转覆盖父页面,请问如何解决?