详细情况:页面中有多个iframe,其中iframe中也可能有iframe。需要的iframe不一定是哪一个,也可能是iframe中的iframe中的其中一个iframe。
希望各位帮忙写一个循环查找。
我的半成品:
<script type="text/javascript">
function showInfo()
{
var iframes = window.document.getElementsByTagName("iframe");
var curs = queryIframe(iframes);
}
var curIframeId = "level widget";
function queryIframe(curObject)
{
for(var i=0;i<curObject.length;i++)
{
if(curObject[i].id==curIframeId)
{
return curObject[i];
}
}
for(var j=0;j<curObject.length;j++)
{
alert(curObject[j].id);
var iframeId = curObject[j].id;
//这个地方不知道该怎么写了,当前这种写法获取不到
var tempIframes = curObject[j].document.getElementByTagName("iframe");
if(null!=tempIframes && tempIframes.length > 0)
{
queryIframe(tempIframes);
}
}
}
</script>
希望各位帮忙写一个循环查找。
我的半成品:
<script type="text/javascript">
function showInfo()
{
var iframes = window.document.getElementsByTagName("iframe");
var curs = queryIframe(iframes);
}
var curIframeId = "level widget";
function queryIframe(curObject)
{
for(var i=0;i<curObject.length;i++)
{
if(curObject[i].id==curIframeId)
{
return curObject[i];
}
}
for(var j=0;j<curObject.length;j++)
{
alert(curObject[j].id);
var iframeId = curObject[j].id;
//这个地方不知道该怎么写了,当前这种写法获取不到
var tempIframes = curObject[j].document.getElementByTagName("iframe");
if(null!=tempIframes && tempIframes.length > 0)
{
queryIframe(tempIframes);
}
}
}
</script>
var tempIframes = curObject[j].windowContent.document.getElementByTagName("iframe");
应该是
var tempIframes = curObject[j].contentWindow.document.getElementsByTagName("iframe");
更新的代码:
var curIframeId = "level widget";
function queryIframe(curObject)
{
for(var i=0;i<curObject.length;i++)
{
if(curObject[i].id==curIframeId)
{
return curObject[i];
}
}
for(var j=0;j<curObject.length;j++)
{
alert("curFrameId:"+curObject[j].name);
//这个地方不知道该怎么写了,当前这种写法获取不到
var tempIframes = curObject[j].contentWindow.frames; //此处会报contentWindow为空异常,但里面确实有东西
if(null!=tempIframes && tempIframes.length > 0)
{
queryIframe(tempIframes);
}
}
}function showInfo()
{
var iframes = window.document.frames;
//alert(iframes[0].name);
var curs = queryIframe(iframes);
//testMethod(iframes);
}