Bildlauf geht im IE über divgrenze hinaus
maurice
- javascript
Hallo zusammen!
Ich habe einen Javascripteffekt eingebaut, der Bilder von links nach rechts laufen lässt.
Das ganze Ding ist in einer 448x300px div eben eingebaut.
Bei mozilla läuft alles super, doch wenn ich es mit dem IE öffne, dann geht es über diese Grenze hinaus bis zum Bildrand.
Der Code dafür ist dieser hier:
<script type="text/javascript">
<!--
/* * * * * * * * * * * * * * D I E V A R I A B L E N * * * * * * * * * * * * * * * * * */
tNews=new Array();
//°°°°°°°°°°Die News
tNews[0]='<a href="refpage/arbeitsamt.html" target="refframe"><img src="refimg/arbeitsamt.jpg" width="60" height="60" alt="Arbeitsamt" border="2"></a></b>';
tNews[1]='<a href="refpage/asbach.html" target="refframe"><img src="refimg/Asbach.jpg" width="60" height="60" alt="Asbach" border="2"></a>';
tNews[2]='<a href="refpage/bundesarchiv.html" target="refframe"><img src="refimg/bundesarchiv.jpg" width="60" height="60" alt="Bundesarchiv" border="2"></a>';
tNews[3]='<a href="refpage/destatis.html" target="refframe"><img src="refimg/destatis.jpg" width="60" height="60" alt="Destatis" border="2"></a>';
tNews[4]='<a href="refpage/deutschebundesbank.html" target="refframe"><img src="refimg/deutschebundesbank.jpg" width="60" height="60" alt="Deutsche Bundesbank" border="2"></a>';
tNews[5]='<a href="refpage/frankfurtermesse.html" target="refframe"><img src="refimg/frankfurtermesse.jpg" width="60" height="60" alt="Frankfurter Messe" border="2"></a>';
tNews[6]='<a href="refpage/heraeus.html" target="refframe"><img src="refimg/heraeus.jpg" width="60" height="60" alt="Heraeus" border="2"></a>';
tNews[7]='<a href="refpage/hochbauamtmain.html" target="refframe"><img src="refimg/hochbauamtmain.jpg" width="60" height="60" alt="Hochbauamt Main" border="2"></a>';
tNews[8]='<a href="refpage/honeywell.html" target="refframe"><img src="refimg/honeywell.jpg" width="60" height="60" alt="Honeywell" border="2"></a>';
tNews[9]='<a href="refpage/igm.html" target="refframe"><img src="refimg/igm.jpg" width="60" height="60" alt="IG Metall" border="2"></a>';
tNews[10]='<a href="refpage/kraftgeneralfoods.html" target="refframe"><img src="refimg/kraftgeneralfoods.jpg" width="60" height="60" alt="Kraft" border="2"></a>';
tNews[11]='<a href="refpage/maggi.html" target="refframe"><img src="refimg/maggi.jpg" width="60" height="60" alt="Maggi" border="2"></a>';
tNews[12]='<a href="refpage/nestle.html" target="refframe"><img src="refimg/nestle.jpg" width="60" height="60" alt="Nestle" border="2"></a>';
tNews[13]='<a href="refpage/rothenberger.html" target="refframe"><img src="refimg/rothenberger.jpg" width="60" height="60" alt="Rothenberger" border="2"></a>';
//°°°°°°°°°°Delimiter zwischen den einzelnen News
tDelimiter =' ';
//°°°°°°°°°°Interval in ms
tInterval =5;
//°°°°°°°°°°Stop bei mouseover?true:false
tStop =true;
//°°°°°°°°°°Falls Leeraum zwischen News...hier Wert erhoehen...minimum:1
tRepeat =2;
//°°°°°°°°°°Rahmen
tBorder ='0px solid #f4f4f4';
//°°°°°°°°°°Breite
tWidth =448;
//°°°°°°°°°°Breite
tHeight =64;
//Abstand Rahmen->Inhalt (top+bottom)
tPadding =0;
//Das Aussehen per CSS anpassbar unter Verwendung des Selectors #ticker
/* * * * * * * * * * * * * * * * D E R T I C K E R * * * * * * * * * * * * * * * * * */
IE=document.all&&!window.opera;DOM=document.getElementById&&!IE;
if(DOM||IE)
{
var tGo;tPos=0;
tStop=tStop?'onmouseover="clearInterval(tGo)"onmouseout="if(st){tGo=setInterval('DM_ticken()','+tInterval+');}"':'';
tTxt=tDelimiter+tNews.join(tDelimiter);tNews=tTxt;for(i=1;i<tRepeat;++i){tNews+=tTxt;}
document.write('<div style="overflow:hidden;border:'+tBorder+';width:'+
tWidth+'px;height:'+tHeight+'px;padding:'+tPadding+'px 0px '+tPadding+'px 0px;">'+
'<nobr><span id="ticker"style="position:relative;"'+tStop+'>'+tNews+'</span></nobr></div>');
tObj=IE?document.all.ticker:document.getElementById('ticker');
function DM_ticken(){tOffset=tObj.offsetWidth/tRepeat;if(Math.abs(tPos)>tOffset){tPos=0;}tObj.style.left=tPos;tPos--;}
tGo=setInterval('DM_ticken()',tInterval);sg=1;st=true;function stop_n_go(o){
st=(sg==1)?false:true;et=(sg==1)?' go ':'stop';sg=(sg%2)+1;o.value=et;
tGo=(sg==2)?clearInterval(tGo):setInterval('DM_ticken()',tInterval);}
}
//-->
</script>
Hat jemand ne Ahnung woran das liegen könnte, bzw welches Attribut ich hinzufügen muss, damit er die Grenze der Div ebene erkennt?
Wäre für Hilfe dankbar!!!
Gruß
Hab's gerade bei mir (IE7) getestet.
Da läuft's.
Hab's gerade bei mir (IE7) getestet.
Da läuft's.
Danke!!!
Könntest das jemand vllt mit ner älteren Version testen?
Bei mir läufts nämlich leider nicht, weiß nicht welche Version hier drauf ist glaube IE6...
Bei mir läufts nämlich leider nicht, weiß nicht welche Version hier drauf ist glaube IE6...
Dann drück doch mal auf das nette Fragezeichen in der Menüleiste des IE und dann auf "Info".
Hab's gerade bei mir (IE7) getestet.
Da läuft's.
bei dem code ein wunder, allein in folgener zeile ist schon ein nicht geschlossenes element - und das ist die erste - den rest des codes wil ich garnicht sehen
tNews[0]='<a href="refpage/arbeitsamt.html" target="refframe"><img src="refimg/arbeitsamt.jpg" width="60" height="60" alt="Arbeitsamt" border="2"></a></b>';
bei dem code ein wunder, allein in folgener zeile ist schon ein nicht geschlossenes element - und das ist die erste - den rest des codes wil ich garnicht sehen
was ist denn daran falsch? Ich hab den ganzen Code ausm Internet gezogen, ich hab leider keine Ahnung von JS. Wie müsste der denn richtig aussehen?
was ist denn daran falsch? Ich hab den ganzen Code ausm Internet gezogen, ich hab leider keine Ahnung von JS. Wie müsste der denn richtig aussehen?
das hat nix mit javascript zu tun, das ist ein html fehler
in SGML/HTML muss jedes geschlossene element irgendwann geöffnet werden, lediglich das automatische schließen von öffnenden elementen ist je nach dialekt vorgesehen
nachdem am zeilenende aber ein deplaziertes </b> steht, welches niemals geöffnet wurde ist das bereits fehlerquelle 1
wenn solch banale fehler gleich in der ersten zeile auftreten, motiviert mich das nicht den rest durchzusehen
zum thema keien ahnung von JS ;) vielleicht ist es ganz schlau das ganze zu ändern, denk darüber nach was du eigentlich möchtest und stelle dann eine konkrete frage - ich möchte wetten, dass die hälfte des von dir geposteten codes überflüssig ist und deinen "keine ahnung" ansatz nur verstärkt
wenn du erstmal verstanden hast (anhand eines kleinen, einfachen und kurzen beispiels) wies funktioniert, kannst du den rest selbst problemlos programmieren/scripten/erstellen
ich empfehle folgende herangehensweise:
erstell ein neues, leeres, valides html dokument (zum testen)
wenn das so aussieht wie "gewünscht" und fehlerfrei ist, überlege dir, wie es nach der manipulation durch javascript aussehen soll - erstelle auch dieses dokument (nur zum testen)
dann mach dir gedanken, was du abändern musst, damit aus dokument 1 dokument 2 wird
das machst du dann mit javascript und bekommst beim selbst machen hilfe bei einem konkreten problem