Hello,
Don't be afraid if
the post is long, I just gives example which runs but doesn't
satisfy me.
My question is:
WHICH IS THE SOLUTION TO MOVE A TEXT ON THE SCREEN CHANGING POSITION AND COLOR
WITH TIMING?
In the end of the post I give the code I've managed to do but which seems very complicated.
Does some one know an easier solution, please.
Thanks, Best regards
My purpose is to do an animation.
1/The message must be at the top left with a background color have fadeIn fadeOut
2/moves top right with another color yellow
3/in the end it must be bottom right red.
First I've tryed this
$("#msg").append("hello").fadeOut(1000).fadeIn(1000).css("background-color","yellow").css({
position: "absolute",
top: "200px",
left: "400px"
}).show();
but css color wait not for fadeIn fadeOut so I've found a solution
with queue
$("#msg").append("hello I want to go!").css("background-color","red").fadeOut(1000).fadeIn(1000).queue( function()
{
$(this).css("background-color","green");
$(this).dequeue();
})
.queue( function()
{
$(this).css({
position: "absolute",
top: "0px",
left: "400px"
}).show();
$(this).dequeue();
});
in the end after struggling reading in books and serching on the internet I found a solution, BUT
it is very difficult to code using it.
I wonder if some one know a better solution easy to code to do this
my code is (which runs but very uneasy to use)
//*********************************************************************************
<!DOCTYPE html>
<html>
<head>
<title>ANIMATION with timer: a solution very difficult to apply</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>
</head>
<body>
<span id="msg">my message: </span>
<script>
$(function() {
var cpt=0;
var time_delta=2000;
var int1=setInterval( function()
{
cpt++;
if (cpt==1)
{
$("#msg").append(time_delta);
$("#msg").html("hello I am top left!").css("background-color","red").fadeOut(500).fadeIn(500).queue( function()
{
$(this).html("hello I am top right!").css({
position: "absolute",
top: "0px",
left: "400px"
}).css("background-color","green").fadeOut(500).fadeIn(500);
$(this).dequeue();
});
}
else if (cpt==2)
{
$("#msg").html("hello I am bottom right!").css({
position: "absolute",
top: "400px",
left: "400px"
}).css("background-color","yellow").fadeOut(500).fadeIn(500).queue( function()
{
$(this).html("hello I am bottom left!").css({
position: "absolute",
top: "400px",
left: "0px"
}).css("background-color","red").fadeOut(500).fadeIn(500);
$(this).dequeue();
});
}
else
{
$("#msg").append("finished");
clearInterval(int1);
}
},time_delta);
});
</script>
</body>
</html>
//*********************************************************************************
David ( @webtecgeek www.thecacaocafe.com )