我用 crossrider.com 编写了一个浏览器扩展,需要使用 javascript 代码循环浏览页面上的框架,
HTML 代码。(Main.html)
<frameset rows="85,*, 35">
<frame name="header" src="1.html" scrolling="no" frameborder="no" >
<frame name="body" src="2.html" scrolling="auto" frameborder="no">
<frame name="footer" src="3.html" scrolling="no" frameborder="no" >
</frameset>
如果我在此页面(Main.html)上编写代码为
alert(self.frames.length);
它给了我 3,如果我这样做
for(var k = 0; k < self.frames.length ; k++)
{
var obj = self.frames[k];
// this obj is always object.
//and I could do further operation on this as obj.document ,
}
但是,如果您编写 crossrider 扩展并执行相同的操作
appAPI.ready(function($){
var framesLength = self.frames.length; //it also gives 3
//but if I do below
for(var k = 0; k < self.frames.length ; k++)
{
var obj = self.frames[k];
// **this obj is always undefined.**
}
});
感谢您对解决方案的任何帮助或指导。