Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to move an element in Diagonal Movement in jQuery?

I know how to move up and down an element in jQuery.

$("#div").animate({"left": "+=100"}, 1000); //move 100px to the right

But I have no idea to move in diagonal movement. I'm doing chess board and I don't know how to move Bishop with effect. Please have a look at following URL http://chess.diem-project.org/

I did like this... but it's not a proper way.

for(var i = 0;i<50;i++){ // move down and move right 1 pixel at a time to get effect
 $("#div").animate({"left": "+="+x}, 1); 
 $("#div").animate({"top": "+="+x}, 1); 
} 

Any idea? Really appreciate your helps!

like image 840
Devyn Avatar asked Mar 28 '10 10:03

Devyn


1 Answers

Do it like this:

 $("#div").animate({left: '+=50', top: '+=50'}, 1000);

You want one animation to get you there...a for loop queues 100 animations in your case, you just need the one :) See a demo here

like image 167
Nick Craver Avatar answered Sep 27 '22 21:09

Nick Craver