axelK
Grünschnabel
Hallo zusammen.
"... ins kalte Wasser gestossen"!
Ich habe leider wenig Ahnung von Javascript und Co., aber ein grundlegendes Interesse, es
zu verstehen, da ich mich beruflich um zwei Webauftritte kümmern kann. Bin eigentlich
Techniker.
Ich habe eine komplette Webpräsenz von einer deutschen Mutter für den spanischen Auftritt
umgebaut. HTML's, Flash-Animationen usw. Seit Anfang der Woche suche ich intensiver nach
einer Problemlösung für Folgendes:
Die Hauptseite wurde mit einem <iframe> für den Main-Content ausgestattet. Über dem
<td><iframe> ist ein <td><img src...> welches ein Bild der Navigation enthält. Fährt
man über das Bild, wird eine Flash-Navigation abgespielt. Das funktioniert soweit auch
alles super, im IE!
Im FF klappen zwar die Buttons der Navigation runter, der Bereich ragt quasi 170px tief
ins/übers <td><iframe>, aber die Buttons sind dann nicht mehr anzusteuern und somit
im FF nicht zu aktivieren und gebrauchen.
Entferne ich das <iframe> aus der darunterliegenden Spalte und setze nichts oder einen
anderen Content rein, funktioniert es. Dann kann der FF die Navigation komplett nutzen.
Für mich hiess das nun, dass es doch mit der Kombination <iframe> und Javascript zu tun
haben muss, da der Bereich für die Flash-Navigation, welcher im CSS als caption2 deklariert
ist, aufgerufen wird.
Hier mal ein paar Code-Schnipsel:
Ich brauche nicht zu erwähnen, dass ich hier mit DW arbeite. Ich habe in den letzten Tagen
einiges dazu gelesen und wie oft, gehen die Meinungen da ja auseinaner usw.
Hoffe aber, dass das dem Ganzen jetzt keinen Abbruch tut.
Navigation + <iframe> + DIV/Flash-Navi
Wofür könnte das NoIEActivate.js sein?
aus dem eingebetteten CSS
Bei einigen Artikeln hatte ich gefunden, dass "Document.all" veraltet sei. Wenn ich es
aber richtig erkannt habe, wird oben im JavaScript sowohl als auch "getElementById"
verwendet. Also in Ordnung so?!
Wollte man damit Kompatibilität zu älteren Browsern schaffen?
Sind das genug Informationen, um mir ggf. Hilfe zu geben, würde es mich sehr freuen,
wenn hier Jemand seine wertvolle Zeit opfert.
Danke,
Viele Grüße,
Axel
"... ins kalte Wasser gestossen"!
Ich habe leider wenig Ahnung von Javascript und Co., aber ein grundlegendes Interesse, es
zu verstehen, da ich mich beruflich um zwei Webauftritte kümmern kann. Bin eigentlich
Techniker.
Ich habe eine komplette Webpräsenz von einer deutschen Mutter für den spanischen Auftritt
umgebaut. HTML's, Flash-Animationen usw. Seit Anfang der Woche suche ich intensiver nach
einer Problemlösung für Folgendes:
Die Hauptseite wurde mit einem <iframe> für den Main-Content ausgestattet. Über dem
<td><iframe> ist ein <td><img src...> welches ein Bild der Navigation enthält. Fährt
man über das Bild, wird eine Flash-Navigation abgespielt. Das funktioniert soweit auch
alles super, im IE!
Im FF klappen zwar die Buttons der Navigation runter, der Bereich ragt quasi 170px tief
ins/übers <td><iframe>, aber die Buttons sind dann nicht mehr anzusteuern und somit
im FF nicht zu aktivieren und gebrauchen.
Entferne ich das <iframe> aus der darunterliegenden Spalte und setze nichts oder einen
anderen Content rein, funktioniert es. Dann kann der FF die Navigation komplett nutzen.
Für mich hiess das nun, dass es doch mit der Kombination <iframe> und Javascript zu tun
haben muss, da der Bereich für die Flash-Navigation, welcher im CSS als caption2 deklariert
ist, aufgerufen wird.
Hier mal ein paar Code-Schnipsel:
Code:
<script type="text/JavaScript">
<!--
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_showHideLayers() { //v6.0
var i,p,v,obj,args=MM_showHideLayers.arguments;
for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
obj.visibility=v; }
}
//-->
</script>
einiges dazu gelesen und wie oft, gehen die Meinungen da ja auseinaner usw.
Hoffe aber, dass das dem Ganzen jetzt keinen Abbruch tut.
Code:
<td width="878" height="40"><img src="gfx/rw/c_m_es.png" width="878" height="40" border="0" onMouseOver="MM_showHideLayers('caption2','','show')"></td>
...
<td height="372" bgcolor="#FFFFFF">
<iframe name="main" style="border:0px" scrolling="auto" frameborder="0" src="content/home_es.html" width="878" height="372"></iframe>
</td>
...
...
<div id="caption2">
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="878" height="170" id="rm" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="ani/es/rm-osub.swf" />
<param name="menu" value="true" />
<param name="quality" value="high" />
<param name="wmode" value="transparent" />
<param name="bgcolor" value="#ffffff" />
<embed src="ani/es/rm-osub.swf" menu="true" quality="high" wmode="transparent" bgcolor="#ffffff" width="878" height="170" name="rm" align="middle" allowscriptaccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
<script language="JavaScript" type="text/javascript" src="scripts/NoIEActivate.js"></script>
</div>
Wofür könnte das NoIEActivate.js sein?
Code:
#caption2
{
padding-left: 0px;
position: absolute;
top: -122px;
left: -303px;
width: 878px;
height: 170px;
display: block;
visibility: hidden;
}
Bei einigen Artikeln hatte ich gefunden, dass "Document.all" veraltet sei. Wenn ich es
aber richtig erkannt habe, wird oben im JavaScript sowohl als auch "getElementById"
verwendet. Also in Ordnung so?!
Wollte man damit Kompatibilität zu älteren Browsern schaffen?
Sind das genug Informationen, um mir ggf. Hilfe zu geben, würde es mich sehr freuen,
wenn hier Jemand seine wertvolle Zeit opfert.
Danke,
Viele Grüße,
Axel