layer in frameset von anderem frame aus ansteuern
ingeborg
- javascript
0 Elya
Wer kann mir helfen? Das wäre sehr schön!
Dreigeteiltes Frameset, von diesem Frame wird befohlen, daß sich eine Ebene in einem anderen Frame öffnen soll-das passiert im IE, aber wieder nicht in NS 7. Wer kann mir sagen, was ich an der Funktion ändern muß, um sie NS 7 tauglich zu machen?
<html>
<head>
<title>löschunten</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
<!--
nn4=(document.layers)?true:false;
ie4=(document.all)?true:false;
nn6=(document.getElementById && !document.all)?true:false;
//generelle funktion um layer in FRAME1 ein- und auszublenden
function show(object) {
if (parent.oben.document.layers &&
parent.oben.document.layers[object] != null)
parent.oben.document.layers[object].visibility = 'visible';
else if (parent.oben.document.all)
parent.oben.document.all[object].style.visibility = 'visible';
}
function hide(object) {
if (parent.oben.document.layers &&
parent.oben.document.layers[object] != null)
parent.oben.document.layers[object].visibility = 'hidden';
else if (parent.oben.document.all)
parent.oben.document.all[object].style.visibility = 'hidden';
}
// -->
</SCRIPT>
<body bgcolor="#020D28">
<table border=0 cellspacing=0 cellpadding=0 width="100%" height="100%" >
<tr> <td valign="bottom" width="13%"><a href="privat/frameset.htm" onMouseOut="hide('trio');" onMouseOver="show('trio');" target="_parent"><img name="Image26" border="0" src="trilogie.gif" width="80" height="40" vspace="14"></a></td>
</tr>
</table>
</BODY>
</HTML>
Und dies ist der Frame mit der Ebene, die sich zeigen soll:
<html>
<head>
<title>löschoben</title>
<link rel="stylesheet" href="file:///D|/Weball/Javalast/Dokumentation/projekt.css" type="text/css">
<style type="text/css"><!--
.siebgrafik { font-family: Arial, Helvetica, sans-serif; font-size: 12pt; font-style: normal; line-height: normal; font-weight: normal; font-variant: normal; color: #CAD8E9}
-->
</style>
<script language="javascript">
<!--
nn4=(document.layers)?true:false;
ie4=(document.all)?true:false;
nn6=(document.getElementById && !document.all)?true:false;
var y=1;
var control=0;
var loop=false;
var direc="rauf";
var scrollpfeile=true;
function fensterhoehe(){
if (isNetscape) {
return window.innerHeight;
} else {
return document.body.clientHeight;
}
}
function fensterbreite () {
if (isNetscape) {
return window.innerWidth
} else {
return document.body.clientWidth
}
}
//-->
</script>
</head>
<body bgcolor="#020D28">
<div id="trio" style="position:absolute; left:7px; top:100px; visibility: hidden">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="siebgrafik">Postkarte </td>
</tr>
</table>
<br>
<br>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="siebgrafik"> Auftraggeber</td>
</tr>
</table>
</div>
<div align="right">
<p>text</p>
</div>
</BODY>
</HTML>
Vielen Dank im Voraus!
Hallo Ingeborg,
Dreigeteiltes Frameset, von diesem Frame wird befohlen, daß sich eine Ebene in einem anderen Frame öffnen soll-das passiert im IE, aber wieder nicht in NS 7. Wer kann mir sagen, was ich an der Funktion ändern muß, um sie NS 7 tauglich zu machen?
nn4=(document.layers)?true:false;
ie4=(document.all)?true:false;
nn6=(document.getElementById && !document.all)?true:false;
function show(object) {
if (parent.oben.document.layers &&
parent.oben.document.layers[object] != null)
parent.oben.document.layers[object].visibility = 'visible';
else if (parent.oben.document.all)
parent.oben.document.all[object].style.visibility = 'visible';
}
[usw für hide]
Diese Skript-Kombi ist irgendwie merkwürdig! Oben benutzt Du Sven R.s schönes Scriptschnipsel um show und hide entsprechen den _drei_ Browser-DOMs zu steuern. Dann nutzt Deine Funktion die dort gewonnenen Erkenntnisse aber nicht, hier fragst Du wieder nur document.layers (--> alte Netscape-Syntax) und document.all (--> IE4-Syntax, wird aber von neueren IE wohl auch noch mitinterpretiert)
Und deshalb ist es auch kei Wunder, daß der aktuelle Netscape rumzickt - du bedienst ihn einfach nicht...
Schau dir nochmal das komplette Show/Hide Layer Script an und füge die Ansteuerung des Frames dazu. Dann müßte es klappen. Ich hab's dir mal rausgesucht. http://forum.de.selfhtml.org/archiv/2002/2/5424/#m30276
Viel Erfolg!
Schöne Grüße aus Köln-Ehrenfeld,
Elya
Hey Elya,
das sieht gut aus, das checke ich jetzt mal. Danke und Grüße aus Berlin
von Ingeborg