IE7 and frames  
Author Message
raghava66





PostPosted: Internet Explorer Web Development, IE7 and frames Top

We have a application which is developed using frames and which is working fine with all browsers. Now with IE7 RC1 we have major problem that a frame is opening in new window(not in new tab)

-----------------------------------------base page code-----------

<html>
<head>
<title>conject</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<frameset rows="15,100,*" frameborder="NO" border="0" framespacing="0">
<frame name="dummy_top" scrolling="NO" noresize src="https://classic.conject.com/classic2/dummy_weiss.html" marginwidth="0" marginheight="0">
<frame name="navigation_top" scrolling="NO" noresize src="https://classic.conject.com/classic2/dummy_weiss.html" marginwidth="0" marginheight="0">
<frame name="content" scrolling="AUTO" src="https://classic.conject.com/classic2/servlet/abcServlet" marginwidth="0" marginheight="0" noresize>
</frameset>
<noframes><body bgcolor="#FFFFFF">
</body></noframes>
</html>


--------------------abcServlet spits out the following code into "content" frame-------

<html>

<SCRIPT LANGUAGE="JavaScript">
<!--
function create_navigation()
{
top.navigation_top.location.href="https://classic.conject.com/classic2/application/navigation.jsp";
}
//--></SCRIPT>
<BODY ONLOAD="create_navigation(); return true;">
<form>
</form>
</html>


--------------------------------------------------------------------------------------------------------------------------

The problem is create_navigation() java script fucntion (from abc servlet) is opening navigation.jsp in new window.

Any help is greatly appreciated


Internet Explorer Development2  
 
 
Rock54





PostPosted: Internet Explorer Web Development, IE7 and frames Top

You get the following error every time the user executes create_navigation(), right

javax.servlet.ServletException: Class `abcServlet' was not found in classpath.

This is due to a class exception. Move all your classes to /WEB-INF/classes and on your HTML document, remove the <body> tags. When there are frames there should be no body tags.

In your script you have:

at com.caucho.server.http.Application.instantiateServlet(Application.java:3191)
at com.caucho.server.http.Application.createServlet(Application.java:3099)
at com.caucho.server.http.Application.loadServlet(Application.java:3060)
at com.caucho.server.http.QServletConfig.loadServlet(QServletConfig.java:435)
at com.caucho.server.http.Application.getFilterChainServlet(Application.java:2804)
at com.caucho.server.http.Application.buildFilterChain(Application.java:2760)
at com.caucho.server.http.Invocation.service(Invocation.java:313)
at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:246)
at com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.java:163)
at com.caucho.server.TcpConnection.run(TcpConnection.java:139)

Move your main program to /WEB-INF/classes and hopefully the browser will execute your program and frames.



 
 
raghava66





PostPosted: Internet Explorer Web Development, IE7 and frames Top

Hi Rock54,

Thanks for response, Unfortunately there is no exception as you said.

The only problem is when the frame with name "content" tries to point the "navigation_top" frame to some JSP through the javascript function "create_navigation()" IE7 (IE6 and IE5.5 are fine) is opening a new window and loading the JSP in the newly opened window.


 
 
raghava66





PostPosted: Internet Explorer Web Development, IE7 and frames Top

I found the reson The value of "Navigate sub-frames across different domains" is set to "disable" in Tools -> InternetOptions -> Security -> custome level settings. This is set to enable in IE6 by default. And one more thing is that my subframes are not across domain they are always from same domain.

 
 
mar7aib





PostPosted: Internet Explorer Web Development, IE7 and frames Top

I'm not sure if this is due to the same cause, but whenever I click a link on the side frame of a framed site it opens up in the same side frame instead of in the main center frame. This doesn't happen in IE6. Help anyone.
 
 
Ama Wanniarachchi





PostPosted: Internet Explorer Web Development, IE7 and frames Top

I had the same issue and coding the target tab to look at the correct frame (target = "framename" )solved the problem. Looks like IE 6 and firefox work without a target tab.



 
 
VvalGGor





PostPosted: Internet Explorer Web Development, IE7 and frames Top

Can you tell how do you code the target for example in th first post, specifically for this line:

top.navigation_top.location.href="https://classic.conject.com/classic2/application/navigation.jsp";

Thanks.