我正在<iframe>我的HTML页面中加载一个并尝试使用Javascript访问其中的元素,但是当我尝试执行我的代码时,我收到以下错误:
SecurityError: Blocked a frame with origin "http://www.<domain>.com" from accessing a cross-origin frame.
Run Code Online (Sandbox Code Playgroud)
你能帮我找一个解决方案,以便我可以访问框架中的元素吗?
我正在使用此代码进行测试,但徒劳无功:
$(document).ready(function() {
var iframeWindow = document.getElementById("my-iframe-id").contentWindow;
iframeWindow.addEventListener("load", function() {
var doc = iframe.contentDocument || iframe.contentWindow.document;
var target = doc.getElementById("my-target-id");
target.innerHTML = "Found it!";
});
});
Run Code Online (Sandbox Code Playgroud) 我有一个网页,其中iframe中有一个textarea.我需要使用JavaScript从其子页面读取此textarea的值.
目前,通过window.parent.getelementbyID().value在JavaScript中使用,我能够获取父页面中除iframe中的textarea之外的所有控件的值.
任何人都可以给我任何指示来解决这个问题吗?
我有一个显示谷歌文档文档的iframe代码:
<div itemprop="description" class="col-xs-12 no-h-padding" id="article_desc" style="margin:0 auto; width:90%; float:none;">
<iframe src="https://docs.google.com/viewer?url=http://example.com/docs/1.pdf&hl=ar&embedded=true" scrolling="no"></iframe>
</div>
Run Code Online (Sandbox Code Playgroud)
现在我想将上图中的灰色背景更改为白色背景颜色,我一直在寻找解决方案,我想出了这个,但它不起作用,背景变白了(我的自定义css)但谷歌文档没有工作,它显示一条消息告诉我"iFrame内部出了问题".
有谁知道我怎么能改变灰色背景颜色?
编辑 它适用于谷歌Chrome和Opera,但不适用于Firefox和Safari.