• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

wie kann ich eine ebene bewegen?

reni

Lounge-Member
Habe schon auf js-welt gesucht aber das sind alles zu lange scripts gibt es nicht einen befehl der eine ebene auf klick zum beispiel nach links bewegt und auf anderen klick wieder nach rechts?
 
hallo,

versuch es doch mal damit...


Code:
<html>
<head>
<title>div von außerhalb des screen einfahren lassen</title>

<style type="text/css">
#bewegdiv{font:14px sans-serif;position:absolute;text-align:center;padding:15px;top:-60px;left:150px;border:4px outset red;width:200px;background-color:gold}
#frage{font:40px sans-serif;text-align:center;border:4px outset white;padding:10px;background-color:silver}
</style>

<script type="text/javascript">
var y=-60     // diese zahl muß mit der angabe {top:} im betreffenden stylesheet übereinstimmen gibt den abstand vom oberen screenrand an
var beginy=-60// diese zahl muß mit der angabe {top:} im betreffenden stylesheet übereinstimmen gibt den abstand vom oberen screenrand an
var speed=4   // bewegt bei jedem aufruf das div um die angegebene anzahl pixel
var endey=100 // ende der bewegung bei der angegebenen anzahl pixel
function bewegen(richtung)
{
 if (richtung=='runter' && y<endey)
 {y=y+speed;
  document.getElementById('bewegdiv').style.top=y;
  if (y<endey) {setTimeout ("bewegen('runter')",20)};
 }
 else
 {
  y=y-speed;
  document.getElementById('bewegdiv').style.top=y;
  if (y>beginy) {setTimeout ("bewegen('rauf')",20)};
 }
}
</script>

</head>

<body>
<div id="frage" onClick="bewegen('runter')">click mich dann bewege ich das div nach unten </div>
<div id="frage" onClick="bewegen('rauf')">click mich dann bewege ich das div nach oben</div>

<div id="bewegdiv">dieses div bewegt sich</div>

</body>
</html>
 
ok wenn ich die ebene nach li und re bewegen will

ändere ich einfach deine ganzen y-werte in x-werte .. stimmts?

Vielen Dank erstmal...muss erstmal probieren..
 
Vielleicht solltest du's noch etwas ändern:

  var x;
  var y = -60;
  var beginy = -60;
  var speed = 4;
  var endey=100;
  function bewegen(richtung) {
    if((richtung == "runter") && (y < endey)) {
      clearTimeout(x);
      y = y+speed;
      document.getElementById("bewegdiv").style.top = y;
      if(y < endey) {
        x = setTimeout("bewegen('runter')",20)
        }
      }
    else {
      clearTimeout(x);
      y = y-speed;
      document.getElementById('bewegdiv').style.top = y;
      if(y > beginy) {
        x = setTimeout("bewegen('rauf')",20)
        }
      }
    }


...dann taucht das Ruckeln bei gleichzeitigem Drücken der beiden Flächen nicht auf.
 
mmh da hab ich ja jetzt noch eine

x-variable, wie mach ich es denn jetzt dass ich es horizontal bewegen kann?
 
Du musst sie ja nicht x nennen.

Wenn du auch horizontal scrollen willst, musst du warscheinlich:

  document.getElementById('bewegdiv').style.left = x;

benutzen
 
Ein weiters Skript:
Damit kannst du die Ebenen mit der Maus ziehen und ablegen wo du gerne möchtest.
 

Anhänge

  • layer.txt
    8,2 KB · Aufrufe: 9
Zurück
Oben