Dies ist das Ergebnis dessen, was ich versuche, nur mit JavaScript (keine jQuery oder CSS) mit setInterval und clearInterval:Verwendung von setInterval und clearInterval zum Verschieben von Text diagonal links (zurück zum Anfang) nach rechts und nach unten
ich muss beginnen, den Text von der oberen linken Ecke bewegt zu der oberen rechten Ecke des Browsers des Fensters. Wenn die obere rechte Ecke erreicht ist, wird der Text in die untere rechte Ecke verschoben. Danach wird es zu seiner Startposition zurückkehren und stoppen. Ich kann den Text nach rechts und unten bewegen, aber nicht zurück zur Startposition. Ich habe verschiedene Möglichkeiten ausprobiert, um meinen Kopf um diesen einen Teil zu wickeln und waren erfolglos. Jede Hilfe würde sehr geschätzt werden. Dies ist mein Code:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
var thisLeft=0;
var thisTop=0;
var moveID=0;
var width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
var height = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
// Function to move the text
function moveText(){
\t
\t var thisText= document.getElementById('myDiv');
\t if (thisLeft < width){
\t \t thisLeft += 100; //how much the text moves right
\t }else if (thisLeft >= width) {
\t \t document.getElementById("myDiv").style.color = "blue";
\t \t document.getElementById("myDiv").style.fontSize= "xx-Large";
\t \t document.getElementById('myDiv').innerHTML= "moveDown";
\t \t thisTop +=100; //how much the text moves down
\t }
\t
\t if (thisTop >= height && thisLeft >= width){
\t \t thisTop -= 100;
\t \t thisLeft -= 100;
\t }
\t thisText.style.left=thisLeft +"px";
\t thisText.style.top=thisTop +"px";
\t }
// how long it will take the text move to complete
function doMove(){
moveID=setInterval(moveText, 500);
}
</script>
</head>
<body onload= "doMove()" >
<div id="myDiv"style="position:absolute;" >
<p>movingRight</p>
</div>
</body>
</html>
zu korrigieren für die Skalierung Sie können http://jsbin.com/hahufocoxa/1/edit?html,output tun. Ich habe auch den Timer gestoppt –
Oh, ich verstehe. Ich habe das Verhältnis an der falschen Stelle multipliziert, insbesondere eine der globalen Variablen, die ich für die Fensterbreite und -höhe deklariert habe. Auch hier bin ich sehr dankbar für all Ihre Hilfe und danke Ihnen, dass Sie mir neue Konzepte vorgestellt haben. – Lprox5