2010-10-21 58 views
-2
<script language="javascript"> 


function switchScreen(v) 
{ 

if(v=='d') 
{ 
    mf.rows="0,*"; 
    window.frames.topFrame.location='blank.htm'; 

} 
else 
{ 
    mf.rows="*,0"; 
    window.frames.topFrame.location='http://sample.htm'; 


} 


} 



</script> 


<frameset name="mf" id="mainFrame" rows="*,0" frameborder=no framespacing=0> 
<frame name='topFrame' id="tp" src='http://sample.htm/' scrolling="no" frameborder=0 noresize marginheight=0 marginwidth=0> 
<frame name='bottomFrame' id="bp" src='Main.html' scrolling="no" frameborder=0 noresize marginheight=0 marginwidth=0> 
</frameset> 

的功能是从底部框架这个JavaScript在Chrome中工作,但在IE

+2

它以什么方式不起作用?它是抛出一个JS错误?请提供更多细节。 – Spudley 2010-10-21 16:20:44

+0

(-1)请提供正确的问题描述和弹出的错误消息。 – 2010-10-21 16:28:33

+0

没有错误。在称为switchScreen('d')时,即底部框架变为100%。在铬它不 – 2010-10-21 16:30:59

回答

1

在这种情况下中调用工作,mf将在Internet Explorer中只,因为该浏览器有“功能“将所有带有名称的DOM元素添加到window对象中。

添加

mf = document.getElementById("mainFrame"); 

到脚本的顶部,它会工作。

通过的方式,在Chrome中看到JavaScript错误,请按Ctrl键++Ĵ,然后在 “控制台” 选项卡。每个浏览器都有一个JavaScript错误控制台,当某些东西不起作用时,该控制台始终应该是第一个调用端口;它有时只是有点隐藏。

+0

它不起作用。我试过javascript控制台。这是我得到不安全的JavaScript尝试访问来自URL http://sample.com/帧的URL http://205.177.170.156/test/bin-release/index.htm。域,协议和端口必须匹配。 – 2010-10-21 16:37:48

+1

@Vivek这是一个新的错误。尝试'.src'而不是'location',例如'window.frames.topFrame.src =“...”'你不能修改不在你的域名上的文档。 – 2010-10-21 16:40:30

+0

我发现了这个问题。这是因为第二个框架正在使用不同域中的位置。非常感谢 – 2010-10-21 16:49:36

相关问题