框架完全呈现后如何调用javascript?

框架完全呈现后如何调用javascript?,javascript,iframe,Javascript,Iframe,我正在寻找一种方法来修改iFrame属性(实际上是一个文本框值)。iFrame位于另一个域中,我确实可以访问它。据我所知,我必须在呈现整个页面(iFrameincluded)后执行此操作。我试过这样的方法: <script type="text/javascript"> $(window).load(function() { alert("test"); d = document.getElementById("myframe"); d.contentWind

我正在寻找一种方法来修改
iFrame
属性(实际上是一个文本框值)。
iFrame
位于另一个域中,我确实可以访问它。据我所知,我必须在呈现整个页面(
iFrame
included)后执行此操作。我试过这样的方法:

<script type="text/javascript">
$(window).load(function() {
    alert("test");
    d = document.getElementById("myframe");
    d.contentWindow.document.getElementById("frametxtbox");
});
</script>

$(窗口)。加载(函数(){
警报(“测试”);
d=document.getElementById(“myframe”);
d、 contentWindow.document.getElementById(“frametxtbox”);
});
但我总是会遇到以下错误:

无法调用未定义的方法“getElementById”


我还注意到,在呈现
iFrame
之前会弹出警报,因此我认为我的脚本是在页面访问帧值之前执行的,因此我得到了错误。我对与web相关的编程知之甚少(总是在后端工作),所以如果我的问题没有意义,请原谅。

如果iframe指向另一个域,它将受到限制。这意味着,在您尝试访问其文档之前,您必须检查wiki并放松策略(查看链接了解详细信息)。之后,您需要将ready事件绑定到iframes文档,而不是您的主页文档

$(window.frames['myframe'].document).ready(function() { alert('moo'); });

查看这是否有帮助:)

contentWindow
不是文档。IIRC你想要
contentWindow.document
也试过了,还是一样的错误。你有权访问在iframe中加载的文档吗?@Kaf好吧,老实说,我不知道你们说的“访问”是什么意思。你是说权限吗?域访问?什么意思?据我所知,看起来我确实可以访问,但我重复一遍,这取决于你的意思。我不是这方面的专家。对不起,我的意思是你能更改加载到iframe中的文档吗?