2012-05-10 31 views
1

我正在编写一个Chrome扩展,它将对call.all的调用更改为可以在chrome中使用。从Chrome扩展中接收帧的内容?

但是,页面由使用document.writeln写入框架集的脚本组成。 框架集由一个框架“FrameMain”组成。

我很难得到一个指向FrameMain中文档的变量。

我认为问题在于,当document_start在chrome中时不会创建FrameMain,并且在document_end发生时它不会被加载。

我目前使用document_end作为一个起点,我的脚本:

$('FrameMain').ready(function() { 
    console.log("ready"); 
    console.log(parent.frames); 
    console.log(parent.frames[0]); 
}); 

的准备时,似乎框架加载打印,它不会立即显示出来。
但是,parent.frames返回一个DOMWindow,并且parent.frames [0]未定义。
如何获得对帧内容的引用?

回答

1

解决了它。

$('FrameMain').ready(function() { 
    console.log("ready"); 

    $($("frame[name = 'FrameMain']")[0].contentDocument).find("body").append("<h1>Hello frame</h1>"); 

}); 

使用选择器和contentDocument是关键。

:)