Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 16
  1. #1
    templer7 ist offline Eroberer
    registriert
    24-12-2008
    Beiträge
    60

    Ticker Script - brauche eure hilfe!!!

    Hallo alle zusammen,
    ich programmiere für meine homepage gerade einen javascript ticker, weil marquee ja nicht von jedem browser aktzeptiet wird.
    soweit sogut... die zeichenkette wird stück für stück eingeschrieben, aber wie bring ich das ganze jetzt übermeinen bildschirm in bewegung?

    ich habe jetzt zwei divs benutzt. das obere bildet das chasis und das innere beherbergt den text. dann wollte ich das padding des chasis verändern und den text vorwärtsschieben. die funktion wird aber nicht wiederholt so wie geplant...
    gibt es da noch eine andere einfachere variante?

    ich möchte mir auch keinen ticker aus dem netz benutzen, weil ich das lieber selber programmiere und dann auch selbst anwenden möchte.

    hier der quelltext:
    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
            "http://www.w3.org/TR/html4/strict.dtd">
    
    	 
    <html>
    	<head>
    	<title>
    		bla
    	</title>				
    	<script type="text/javascript">
    				var text01 = "*** Das ist ein wirklich langer Test_Ticker ***";
    				var pos = 0;
    				var pad = 1;
    				var bool = true;
    				document.getElementById('lauftext_chasis').style.paddingRight = 0 +"%";
    				
    				function ticker() {
    					if(bool) {
    						if (pos <= text01.length) {
    								document.getElementById('lauftext').firstChild.data = text01.substring(0, pos);
    								pos++;
    								if(pos > text01.length) {
    									bool = false;
    								}
    								setTimeout("ticker()", 120);	
    							} 
    						} else {
    								ticker_bewegen();
    							}
    						}
    				
    				function ticker_bewegen() {
    					var ticker = document.getElementById('lauftext_chasis');
    					if(ticker.style.paddingRight <= 100 +'%') {
    						ticker.style.paddingRight = ticker.style.paddingRight + pad +"%";
    						alert(ticker.style.paddingRight);
    						pad++
    						setTimeout("ticker_bewegen();", 120); 
    					}
    				}
    
    	</script>
    	<style type="text/css">
    	 
    		body, html { 	margin:0;
    						padding:0;
    						height:100%;
    						width:100%; }
    		
    		#left {			background-color:blue;
    						width:5%;
    						height:100%;
    						float:left; }
    						
    		#oben {			background-color:black;
    						width:90%;
    						height:15%;
    						float:left; }
    						
    		#mitte {		background-color:red;
    						width:90%;
    						height:80%;
    						float:left; }
    						
    		#unten {		background-color:green;
    						width:90%;
    						height:5%;
    						float:left; }
    						
    		#rechts {		background-color:blue;
    						width:5%;
    						height:100%;
    						float:right; }
    		
    		#lauftext {			min-width:0;}
    							
    		#lauftext_chasis {	background-color:pink;
    							overflow:hidden;
    							text-align:right;
    							padding-right:1%;}
    
    	</style>
    	</head>
    	<body onload="ticker()">
    	<div id="left"></div>
    		<div id="oben"></div>
    	<div id="rechts"></div>	
    		<div id="mitte"></div>
    		<div id="unten">
    			<div id="lauftext_chasis">
    				<div id="lauftext">			
    				</div>
    			</div>
    		</div>
    	</body>
    </html>

  2. #2
    lordevil ist offline Doppel-As
    registriert
    19-04-2006
    Ort
    Rennerod
    Beiträge
    137

    AW: Ticker Script - brauche eure hilfe!!!

    Hallo,

    setTimeout ist wohl die falsche Funktion... Wie der Name schon sagt, wird die angegebene Funktion ausgeführt, nachdem die angegebene Zeit abgelaufen ist.

    Versuch es mal mit setInterval
    http://de.selfhtml.org/javascript/ob...m#set_interval

    Gruß

  3. #3
    templer7 ist offline Eroberer
    registriert
    24-12-2008
    Beiträge
    60

    AW: Ticker Script - brauche eure hilfe!!!

    ok... aber beim schreiben der worte hat es mit setTimeout doch auch funktioniert...

    danke
    sven

  4. #4
    templer7 ist offline Eroberer
    registriert
    24-12-2008
    Beiträge
    60

    AW: Ticker Script - brauche eure hilfe!!!

    fehlerkonsole:

    Fehler: document.getElementById("lauftext_chasis") is null
    Quelldatei: file:///C:/Users/Dragon/Desktop/test.html
    Zeile: 15

    Fehler: ticker_bewegen is not defined
    Quelldatei: file:///C:/Users/Dragon/Desktop/test.html
    Zeile: 28

    setTimeout wird aber nur einmal verwendet. dann startet die funktion neu...
    deswegen müsste ich diese auch verwenden können. hab es jetzt erstmal mit setInterval gemacht.

    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
            "http://www.w3.org/TR/html4/strict.dtd">
    
    	 
    <html>
    	<head>
    	<title>
    		bla
    	</title>				
    	<script type="text/javascript">
    				var text01 = "*** Das ist ein wirklich langer Test_Ticker ***";
    				var pos = 0;
    				var pad = 1;
    				var bool = true;
    				document.getElementById('lauftext_chasis').style.paddingRight = 0 +"%";
    				
    				function ticker() {
    					if(bool) {
    						if (pos <= text01.length) {
    								document.getElementById('lauftext').firstChild.data = text01.substring(0, pos);
    								pos++;
    								if(pos > text01.length) {
    									bool = false;
    								}
    								setTimeout("ticker()", 120);	
    							} 
    						} else {
    								ticker_bewegen();
    							}
    						
    						
    				function setPad(ticker) {
    						if(ticker.style.paddingRight <= 100 +'%') {
    							ticker.style.paddingRight = ticker.style.paddingRight + pad +"%";
    							pad++						
    						} else {
                                                      document.clearInterval(INTER); }
                                     }
    						
    				function ticker_bewegen() {
    					var ticker = document.getElementById('lauftext_chasis');
    					var INTER = document.setInterval("setPad("+ticker+");", 120); 
    					}
    				}
    
    	</script>
    	<style type="text/css">
    	 
    		body, html { 	margin:0;
    						padding:0;
    						height:100%;
    						width:100%; }
    		
    		#left {			background-color:blue;
    						width:5%;
    						height:100%;
    						float:left; }
    						
    		#oben {			background-color:black;
    						width:90%;
    						height:15%;
    						float:left; }
    						
    		#mitte {		background-color:red;
    						width:90%;
    						height:80%;
    						float:left; }
    						
    		#unten {		background-color:green;
    						width:90%;
    						height:5%;
    						float:left; }
    						
    		#rechts {		background-color:blue;
    						width:5%;
    						height:100%;
    						float:right; }
    		
    		#lauftext {			min-width:0;}
    							
    		#lauftext_chasis {	background-color:pink;
    							overflow:hidden;
    							text-align:right;
    							padding-right:1%;}
    
    	</style>
    	</head>
    	<body onload="ticker()">
    	<div id="left"></div>
    		<div id="oben"></div>
    	<div id="rechts"></div>	
    		<div id="mitte"></div>
    		<div id="unten">
    			<div id="lauftext_chasis">
    				<div id="lauftext">x			
    				</div>
    			</div>
    		</div>
    	</body>
    </html>
    Geändert von templer7 (23-08-2009 um 22:38 Uhr)

  5. #5
    tsseh ist offline Foren-Gott
    registriert
    19-05-2008
    Beiträge
    5.640

    AW: Ticker Script - brauche eure hilfe!!!

    ***doppelpost***
    Geändert von tsseh (24-08-2009 um 10:16 Uhr)

  6. #6
    tsseh ist offline Foren-Gott
    registriert
    19-05-2008
    Beiträge
    5.640

    AW: Ticker Script - brauche eure hilfe!!!

    document.getElementById('lauftext_chasis').style.paddingRight = 0 +"%";
    ist globaler code und läuft ab, bevor das element überhaupt da ist. und wenn es nicht da ist, kannst du auch seinen style nicht ändern.
    pack den code hinter das div.

    Code:
    function ticker_bewegen() {
    					var ticker = document.getElementById('lauftext_chasis');
    					var INTER = document.setInterval("setPad("+ticker+");", 120); 
    					}
    setTimeout ist schon richtig, aber wie setInterval keine funktion von document, sondern von window.
    ticker ist ein element und damit ein objekt, das kannst du so nicht an setInterval/setTimeout übergeben. mach das mit einer funktion.

    Code:
    function ticker_bewegen() {
    					var ticker = document.getElementById('lauftext_chasis');
    					var INTER = document.setInterval(function() { setPad(ticker); }, 120); 
    					}
    ticker heißt auch deine funktion, daher mußt du vorsichtig mit der variablen ticker hier sein. besser, du nennst sie anders.
    wieso besorgst du dir das element eigentlich hier und übergibst es der funktion? besorge es doch in der funktion

  7. #7
    templer7 ist offline Eroberer
    registriert
    24-12-2008
    Beiträge
    60

    AW: Ticker Script - brauche eure hilfe!!!

    Fehlerkonsole:

    Warnung: Ende des Werts erwartet, aber '473%' gefunden. Fehler beim Verarbeiten des Wertes für 'padding-right'. Deklaration ignoriert.
    Quelldatei: file:///C:/Users/Dragon/Desktop/test.html
    Zeile: 0

    er hört auch gar nicht auf zu zählen, weil er padding-right gar nicht verändert...
    hab jetzt wieder auf setTimeout geändert.

    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
            "http://www.w3.org/TR/html4/strict.dtd">
    
    	 
    <html>
    	<head>
    	<title>
    		bla
    	</title>				
    	<script type="text/javascript">
    				var text01 = "*** Das ist ein wirklich langer Test_Ticker ***";
    				var pos = 0;
    				var pad = 1;
    				var bool = true;
    				
    				function lauftext() {
    					if(bool) {
    						if (pos <= text01.length) {
    								document.getElementById('lauftext').firstChild.data = text01.substring(0, pos);
    								pos++;
    								if(pos > text01.length) {
    									bool = false;
    								}
    								setTimeout("lauftext()", 120);	
    							} 
    						} else {
    								ticker_bewegen();
    							}
    				}
    						
    				function ticker_bewegen() {
    					var ticker = document.getElementById('lauftext_chasis');
    					if(ticker.style.paddingRight <= 100 +'%') {
    						ticker.style.paddingRight = ticker.style.paddingRight + pad +"%";
    						pad++	
    						setTimeout("ticker_bewegen()", 120);
    					} else {
    						alert("Fertig");
    					}
    				}
    	</script>
    	<style type="text/css">
    	 
    		body, html { 	margin:0;
    						padding:0;
    						height:100%;
    						width:100%; }
    		
    		#left {			background-color:blue;
    						width:5%;
    						height:100%;
    						float:left; }
    						
    		#oben {			background-color:black;
    						width:90%;
    						height:15%;
    						float:left; }
    						
    		#mitte {		background-color:red;
    						width:90%;
    						height:80%;
    						float:left; }
    						
    		#unten {		background-color:green;
    						width:90%;
    						height:5%;
    						float:left; }
    						
    		#rechts {		background-color:blue;
    						width:5%;
    						height:100%;
    						float:right; }
    		
    		#lauftext {			min-width:0;}
    							
    		#lauftext_chasis {	background-color:pink;
    							overflow:hidden;
    							text-align:right; }
    
    	</style>
    	</head>
    	<body onload="lauftext()">
    	<div id="left"></div>
    		<div id="oben"></div>
    	<div id="rechts"></div>	
    		<div id="mitte"></div>
    		<div id="unten">
    			<div id="lauftext_chasis">
    				<div id="lauftext">x			
    				</div>
    			</div>
    			<script type="text/javascript">
    				document.getElementById('lauftext_chasis').style.paddingRight = 0 +"%";
    			</script>
    		</div>
    	</body>
    </html>

  8. #8
    templer7 ist offline Eroberer
    registriert
    24-12-2008
    Beiträge
    60

    AW: Ticker Script - brauche eure hilfe!!!

    Script bearbeitet.

    Neuer Post:
    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
            "http://www.w3.org/TR/html4/strict.dtd">
    
    	 
    <html>
    	<head>
    	<title>
    		bla
    	</title>				
    	<script type="text/javascript">
    				var text01 = "*** Das ist ein wirklich langer Test_Ticker ***";
    				var pos = 0;
    				var bool = true;
    				
    				function lauftext() {
    					if(bool) {
    						if (pos <= text01.length) {
    								document.getElementById('lauftext').firstChild.data = text01.substring(0, pos);
    								pos++;
    								if(pos > text01.length) {
    									bool = false;
    								}
    								setTimeout("lauftext()", 120);	
    							} 
    						} else {
    								ticker_bewegen();
    							}
    				}
    						
    				function ticker_bewegen() {
    					var ticker = document.getElementById('lauftext_chasis');
    					ticker.style.paddingRight = 0 +"%";
    					for(var pad = 0 +"%"; pad <= 100 +'%'; pad++) {
    						setTimeout(+ticker+".style.paddingRight = "+pad+" +'%';", 120);	
    					} 
    					alert("Fertig");					
    				}
    	</script>
    	<style type="text/css">
    	 
    		body, html { 	margin:0;
    						padding:0;
    						height:100%;
    						width:100%; }
    		
    		#left {			background-color:blue;
    						width:5%;
    						height:100%;
    						float:left; }
    						
    		#oben {			background-color:black;
    						width:90%;
    						height:15%;
    						float:left; }
    						
    		#mitte {		background-color:red;
    						width:90%;
    						height:80%;
    						float:left; }
    						
    		#unten {		background-color:green;
    						width:90%;
    						height:5%;
    						float:left; }
    						
    		#rechts {		background-color:blue;
    						width:5%;
    						height:100%;
    						float:right; }
    		
    		#lauftext {			min-width:0;}
    							
    		#lauftext_chasis {	background-color:pink;
    							overflow:hidden;
    							text-align:right; }
    
    	</style>
    	</head>
    	<body onload="lauftext()">
    	<div id="left"></div>
    		<div id="oben"></div>
    	<div id="rechts"></div>	
    		<div id="mitte"></div>
    		<div id="unten">
    			<div id="lauftext_chasis">
    				<div id="lauftext">x			
    				</div>
    			</div>
    			<script type="text/javascript">
    				
    			</script>
    		</div>
    	</body>
    </html>
    Komische Fehlermeldung der Konsole:
    Code:
    Fehler: NaN.style is undefined
    Quelldatei: file:///C:/Users/Dragon/Desktop/test.html
    Zeile: 34
    Geändert von templer7 (24-08-2009 um 16:16 Uhr) Grund: script update

  9. #9
    ToM80 ist offline Foren-Gott
    registriert
    27-03-2006
    Ort
    Hilden
    Beiträge
    2.728

    AW: Ticker Script - brauche eure hilfe!!!

    Teste das ganze mal in Firefox. Da hast du eine vernünftige Fehlerkonsole ;-)
    Zitat aus German-Bash.org:
    <N00b> html div oder was ?
    <devil-driver> ok, stell dir vor html is deine muttersprache (statt deutsch) - und du die techniken (framesets, div-container, tabellen) sind die dialekte. dann wäre
    - div-container -> hochdeutsch. versteht jeder
    -tabellen -> bayrisch. verstehen manche, hört sich aber immer lustig an
    - framesets -> übelstes sächsisch. versteht keiner, will auch niemand...

  10. #10
    templer7 ist offline Eroberer
    registriert
    24-12-2008
    Beiträge
    60

    AW: Ticker Script - brauche eure hilfe!!!

    lol? danke für den tipp aber ich benutze firefox 3.5.2....

  11. #11
    templer7 ist offline Eroberer
    registriert
    24-12-2008
    Beiträge
    60

    AW: Ticker Script - brauche eure hilfe!!!

    nochmal ich....

    funktion ticker_bewegen erneut geändert... und ich bin ziemlich verwirrt von dem ergebnis.
    erstes alert = PAD;
    {zweites alert = PAD;
    drittes alert = margin-right von #lauftext; }
    {} wiederholt sich abwechselnd...

    die ausgegebenen werte sind rechtverwunderlich...

  12. #12
    templer7 ist offline Eroberer
    registriert
    24-12-2008
    Beiträge
    60

    AW: Ticker Script - brauche eure hilfe!!!

    Code:
    				function ticker_bewegen() {
    						var pad = 0;
    						alert(pad);
    						var INTER = window.setInterval(function(pad) { 	document.getElementById('lauftext').style.marginRight = pad +'%';
    																		pad++; 
    																		alert(pad);
    																		alert(document.getElementById('lauftext').style.marginRight);
    																		if(pad >= 100) 
    																		{window.clearInterval(INTER);} }, 120);			
    				}
    bsp hier zu finden: www.kobudokan.de/bla.html

  13. #13
    tsseh ist offline Foren-Gott
    registriert
    19-05-2008
    Beiträge
    5.640

    AW: Ticker Script - brauche eure hilfe!!!

    hast du irgend ein system in deiner fehlersuche, oder änderst du nach dem zufallsprinzip wild deinen code?

  14. #14
    templer7 ist offline Eroberer
    registriert
    24-12-2008
    Beiträge
    60

    AW: Ticker Script - brauche eure hilfe!!!

    hehehe...

    ich hab erst den tipp setInterval verfolgt und einfach mit setTimeout ausgetauscht.
    nächster code rückgängiggemacht...

    dann hab ich dass ganze komplett umstrukturiert, weil ich schon öfters mal solche unerklärlichen probs hatte.
    setInterval als einziges Tag in der Funktion.. und da hat es geklappt. nur dann gab es unregelmäßigkeiten. padding vom parent in margin vom child geändert. gleiches problem.
    test seite angekuckt? wirklich merkwürdig...

    danke
    sven

  15. #15
    tsseh ist offline Foren-Gott
    registriert
    19-05-2008
    Beiträge
    5.640

    AW: Ticker Script - brauche eure hilfe!!!

    Zitat Zitat von templer7 Beitrag anzeigen
    dann hab ich dass ganze komplett umstrukturiert, weil ich schon öfters mal solche unerklärlichen probs hatte.
    setInterval als einziges Tag in der Funktion.. und da hat es geklappt. nur dann gab es unregelmäßigkeiten. padding vom parent in margin vom child geändert. gleiches problem.
    ??? und ab hier hab ich keine ahnung mehr, was du eigentlich bezweckst.
    du willst einen text(div mit text) von einem ende eines umgebenden div-elementes zum anderen ende des umgebenden div-elementes laufen lassen.
    mußt du div-inner.style.left im bereich div-outer.offsetWidth bis -div-inner.offsetWidth laufen lassen



    Zitat Zitat von templer7 Beitrag anzeigen
    test seite angekuckt?
    nein

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Brauch Hilfe bei einem Script!
    Von SixxKiller im Forum JavaScript
    Antworten: 0
    Letzter Beitrag: 28-08-2006, 22:21
  2. pic vergrösserung..brauche hilfe beim anpassen
    Von jsnoob im Forum JavaScript
    Antworten: 8
    Letzter Beitrag: 19-07-2006, 15:19
  3. Brauche Hilfe bei Javascript!
    Von Paddyy im Forum JavaScript
    Antworten: 11
    Letzter Beitrag: 28-07-2005, 15:30
  4. Brauche dringend Hilfe bei meinem Menü Script
    Von AEdevil im Forum JavaScript
    Antworten: 15
    Letzter Beitrag: 12-07-2005, 17:29
  5. Hilfe, brache Script
    Von Beamo im Forum JavaScript
    Antworten: 1
    Letzter Beitrag: 06-09-2002, 09:42

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •