chilloutfuerst: Text von rechts

  
<script language="javascript" type="text/javascript">  
  
if (document.layers)  
var ns4def=''  
  
function animatein()  
{  
	if (document.getElementById||document.all)  
	{  
		var crossheader= '';  
		for (var idx = 0; idx < document.getElementsByName('flyin').length; idx++)  
		{  
			var crossheader = document.getElementsByName('flyin')[idx].style;  
			if (parseInt(crossheader.right)<0)  
			{  
				crossheader.left=parseInt(crossheader.right)+20+"px";  
			}  
			else  
			{  
				crossheader.right=0;  
				crossheader.fontStyle="normal";  
				clearInterval(start);  
			}  
		}  
	}  
  
}//function  
  
if (document.getElementById||document.all)  
start=setInterval("animatein()",50)  
</script>  

<body>  
    <h2 id="flyin" style="position:relative; right: 600px;  &{ns4def}; " name="flyin" ><li>Ich bin  Testschrift</li></h2>  
    <h2 id="flyin2" style="position:relative; left:-600px;  &{ns4def}; " name="flyin" ><li>Ich bin  Testschrift</li></h2>  
  
    <p>&nbsp;</p>  
  
</body>

Hallo zusammen,

habe obenstehendes Skript und möchte nun das der Text von rechts nach links eingeflogen kommt und nicht wie momentan von links nach rechts. hat jmd. eine Idee wie cih das ändern kann??

Vielen Dank und beste grüße

chilloutfuerst

  1. Lieber chilloutfuerst,

    willst Du ne fertige Lösung, oder willst Du lernen, was da abgeht?

    Liebe Grüße,

    Felix Riesterer.

    --
    ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
    1. Hallo Felix,

      am liebsten beides

      habe das Skript schon so umgeschrieben dass ich jetzt mehrere und nicht mehr wie ursprünglich nur ein Element einfliegen lassen kann und auch schon verschiedenste Sachen geändert, aber leider immer mit dem Ergebnis dass sich im Anschluss gar nichts mehr bewegt hat.

      Wenn du aber die Lösung hast; wäre ich dir sehr dankbar und denke, dass ich mir anhand derer den Rest selbst erklären könnte. ICh habe wohl irgendwo eine Denkblockade weil so schwierig ist das ja eigentlich nicht..

      besten Dank

      JP

      1. Lieber Chilloutfuerst,

        am liebsten beides

        OK! Dann habe ich zwei Links für Dich, um dazuzulernen:

        * Kleiner Lehrgang zum vernünftigen Schreiben eines JavaScripts
        * Testseite für (JavaScript-)animierte Grußkarten

        Liebe Grüße,

        Felix Riesterer.

        --
        ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
        1. Also die beiden Links haben mir überhaupt nicht geholfen. Das Problem ist, dass ich ja momentan von einem negativen offset ausgehe welches sollte der text von rechts kommen positiv wird,dann müsste noch mittels substring die pixel-anzahl in ein int geparset werden und aus der if anweisung eine while schleife werden;

          hast du das denn hinbekommen dass die Schrift von rechts kommt???
          Wäre für eine Lösung sehr dankbar

          1. hast du das denn hinbekommen dass die Schrift von rechts kommt???
            Wäre für eine Lösung sehr dankbar

            Wenn du nichts dazulernen willst, nutze ein fertiges Framework - animate aus dem jQuery-Framework dürfte interessant für dich sein.

            1. habe dazugelernt und es selber hinbekommen. Hier die lösung des Problems

                
              <script language="javascript" type="text/javascript">  
                
              if (document.layers)  
              var ns4def=''  
                
              function animatein()  
              {  
              	if (document.getElementById || document.all)  
              	{  
              		for (var idx = 0; idx < document.getElementsByName('flyin').length; idx++)  
              		{  
              			var crossheader = document.getElementsByName('flyin')[idx].style;  
              			var leftVal = crossheader.left.substring(0, crossheader.left.indexOf('px'));  
              			if (parseInt(leftVal) > 0)  
              			{  
              				crossheader.left = leftVal - 5 + "px";  
              				start = setInterval("animatein()",500);  
              			}  
              			else  
              			{  
              				crossheader.left="0px";  
              				crossheader.fontStyle="normal";  
              				clearInterval(start);  
              			}  
              		}//for  
              	}  
                
              }//function  
                
              if (document.getElementById||document.all)  
              	start=setInterval("animatein()",100);  
              </script>