我想知道是否有替代HTML5的iFrames.我的意思是,能够在不使用iFrame的情况下在网页内注入跨域HTML.
好的,我有一个页面,在这个页面上我有一个iframe.我需要做的是在iframe页面上,找出主页面的URL是什么.
我已经搜索过,我知道如果我的iframe页面位于不同的域上,这是不可能的,因为这是跨站点脚本.但是我读过的每个地方都说如果iframe页面和父页面在同一个域中,那么如果我这样做,它应该可以工作:
parent.document.location
Run Code Online (Sandbox Code Playgroud)
parent.window.document.location
Run Code Online (Sandbox Code Playgroud)
parent.window.location
Run Code Online (Sandbox Code Playgroud)
parent.document.location.href
Run Code Online (Sandbox Code Playgroud)
...或其他类似的组合,因为似乎有多种方法来获得相同的信息.
不管怎么说,这就是问题所在.我的iframe与主页面位于同一个域中,但它不在同一个SUB域中.所以我举个例子
http:// www.mysite.com/pageA.html
然后我的iframe网址是
http:// qa-www.mysite.com/pageB.html
当我尝试从pageB.html(iframe页面)获取URL时,我不断收到相同的访问被拒绝错误.所以看起来甚至子域都算作跨站点脚本,这是正确的,还是我做错了什么?
iframe中的网站不在同一个域中,但两者都是我的,我想iframe在父网站之间进行通信.可能吗?
假设我无法控制iframe中的内容,是否有任何方法可以通过父页面检测到src更改?某种上载可能吗?
我的最后一招是如果iframe src与以前相同,则进行1秒间隔测试,但是做这个hacky解决方案会很糟糕.
如果它有帮助我正在使用jQuery库.
好吧,我有一个IFrame,它调用相同的域页面.我的问题是我想从这个被调用的页面(来自JavaScript)访问来自这个父iframe的一些信息.如何访问此iframe?
细节:有几个像这样的Iframe,可以加载相同的页面,因为我正在编写Windows环境.我打算关闭这个Iframe,这就是为什么我需要知道我应该从他内部关闭的原因.我有一个数组保持对这些Iframe的引用.
编辑:动态生成iframe
HTML5定义了几个嵌入的内容元素,从鸟瞰图来看,它们似乎非常相似,大致相同.
是什么之间的实际差异iframe,embed和object?
如果我想从第三方网站嵌入HTML文件,我可以使用哪些元素,它们会有什么不同?
如何控制一个体内元素的背景图像和颜色iframe?注意,嵌入的body元素有一个类,而且iframe是一个页面,它是我站点的一部分.
我需要这个的原因是我的网站有一个黑色背景分配给身体,然后白色背景分配给包含文本的div.WYSIWYG编辑器iframe在编辑时使用嵌入内容,但它不包含div,因此文本很难阅读.
iframe编辑器中的when 的主体有一个在其他任何地方都没有使用的类,所以我假设这个被放在那里,所以这样的问题可以解决.但是,当我应用样式时,class.body它们不会覆盖应用于body的样式.奇怪的是,样式确实出现在Firebug中,所以我不知道发生了什么!
谢谢
更新 - 我已经尝试了@ mikeq的解决方案,即将类型添加到正文类的类中.这在添加到主页的样式表时不起作用,但在使用Firebug添加时它确实有效.我假设这是因为Firebug应用于页面上的所有元素,而CSS不应用于iframe中.这是否意味着在使用JavaScript加载窗口后添加css会起作用?
<iframe id="id_description_iframe" class="rte-zone" height="200" frameborder="0" title="description">
<html>
<head></head>
<body class="frameBody">
test<br/>
</body>
</html>
</iframe>
Run Code Online (Sandbox Code Playgroud)
我想得到的是:
test<br/>
Run Code Online (Sandbox Code Playgroud) 我在页面上有两个iframe,一个对另一个进行了更改,但另一个iframe在我刷新之前没有显示更改.有没有一种简单的方法来使用jQuery刷新这个iframe?
<div class="project">
<iframe id="currentElement" class="myframe" name="myframe" src="http://somesite.com/something/new"></iframe>
</div>
Run Code Online (Sandbox Code Playgroud) 不知何故,将鼠标悬停在Google+加一个窗口小部件上可能会引入工具提示类型的交易,该交易明显大于<iframe>其所包含的元素.我已经检查了DOM以确认这一点.*
所以:
什么?怎么样!?
如果恶意使用,这不是点击劫持的大好机会吗?(想象一下有人为这些社交小部件做MITM!)
*更新:我看到的是工具提示消息是第二个动态创建的消息iframe.
iframe ×10
javascript ×6
html ×4
html5 ×2
jquery ×2
ajax ×1
browser ×1
cross-domain ×1
css ×1
onload ×1
overriding ×1
security ×1
styles ×1