Ready to watch this entire course?
Become a member and get unlimited access to the entire skills library of over 4,900 courses, including more Web and personalized recommendations.Start Your Free Trial Now
- View Offline
- Creating graphics and importing them into Edge Animate
- Adding animation and interactivity
- Making items draggable
- Adding a droppable target area
- Controlling multiple objects
- Resetting positions of objects
- Testing and publishing your project
Skill Level Beginner
As you add your Drag and Drop functionality, you want to make sure that you're testing it often. Quite frankly when I drop the eyes on the body and then I try to put them back, it actually snaps back to the body. Okay? So basically what I need to do is when I drop the eyes back over in this area, I need them to snap back in place rather than snapping back to the body. So, through this testing, I realize what I need to do and luckily the functionality is largely what I've already created.
So, with the eyes selected. Right down here I'm going to open up the actions for the eyes. And notice right in here, this is what I want to add to. Notice how I have monster body droppable. Well, this is the functionality I want to duplicate. So I can take this, I can Copy it. And Paste it below, basically duplicating it. And what I want to do, is I want to snap it back to the original positions. So I'll just say, origPos, original position. But I don't have an element to created that's called original position yet.
So, what I would do is create it right now. So jumping in here using the Rectangle tool, just drawing out a big rectangle. Now obviously, this doesn't look very good. I'll change the opacity of that rectangle, basically making it invisible. And lastly, you gotta make sure that not only is it called origPose, just like that, but I need to make sure it's beneath everything else. So beneath the eyes.
And the body, all that good stuff, so moving it down. Now it's on the right layer or at the right depth. And it's called the correct thing. I can go back into my code for this specific mouse over for the eyes. Orig position looks great. It's going to accept the eyes. And on Drop I can have it play, but really what I want to happen is I need it to snap back to the original position. So I'm going to say sym for that symbol dollar sign and the item name which is going to be eyes.
So for the eyes I want to animate back into play. So .animate this happens to be a jQuery function and within these parenthesis this is where I want to add some parameters. Okay I am going to add some curly braces. And right in here. This is where I want to add say for instance left, so move it to the left, oh I don't know 30 pixels. Just look under X this is basically the left, and as I roll over that X you can see how it says left right there. So animate it back to left 30 pixels.
Comma and this is CSS. For CSS it's top. We're defining the value of top as being one 130 pixels. PX just like that and lastly outside of these curly braces I'm going to add a comma. And then I can accept or use a different parameter which is going to be slow, medium, fast. I'm going to type in slow just so we can see it smoothly glide across and that looks good to me.
So I'm Saving this. I'm going to preview it in the browser. So initially it will snap back, that looks fine. Drop it onto the eyes. That looks good. Now, remember when we dragged it over here, it would always snap back here. But let's see what happens. It moves back into its original position. So that looks great. We want to make sure this is working for both of our elements, so selecting the eyes again. Copying this functionality for the Droppable, for the original position and keep in mind the changes you need to make are that you need to adjust not only the name of the symbol to mouth.
Like I'm doing now. But, also, the final position. So, with the mouse selected, you could say, it's at 0 and 242. I'm going to change that to 0. 242. Running. Eyes work great. Mouth. Bring it over here, snaps back into position as well. All using Dragable and Dropable on multiple elements.