Advanced drag and drop exercises

Jun 25, 2012

I want to create a drag and drop quiz that gives interim feedback to say which items are still incorrect or which are correct so far. I don't want to give imediate feedback by changing the state - I want the user to try the quiz, then click Submit.

Is there a way to say something like:

You have x (number of) correct answers still to find.

Or can I for example, after clicking Submit, show which answers are correct at that point.

Many thanks,


38 Replies
Annie Jean

HI Fiona,

I have a made a test that with a custom button to count the number of correct answers.

The count is made through a variable looking at the state of the crosses.

I have added a "Drop correct" state to every cross and added state changes when dropped on the right target.

Look at the file and if you need further information, don't hesitate to post back.

Have a nice day!


Eilert Torsnes

Hello Fiona and Annie How are you guys?

I posted a similar question in the drag and drop tutorial comment field some weeks back.

What I expected as an option when the user press submit, was for the correct placed items to stay in place, and the incorrect placed items to be returned to the starting point. To my understanding thats what you want as well Fiona?

I didn't get any response from the developers, and my post was deleted from the comment field of the tutorial along with all responses...without being moved to the forum, as far as I can tell.

IMO this function is basic d&d-functionality, and would be a way better form of feedback than the current alternative. To give the user a message saying that the items are placed incorrectly , without letting them know if all, a few or just one item are placed incorrectly is not very user friendly, pedagogically speaking....

I'm not too fond of Storylines alternative for direct feedback either, as it forbids the user to place the item on an incorrect droplocation. Kind of takes away all the challenge...

As there are a few options for customizing responses already, one wouldn't think that it would be too difficult to enable this function as well in a future update for Storyline:)

Eilert Torsnes

Feature Request Number: 00289125

Request Details:

Hey guys!

I've been posting on the forum regarding a drag&drop feature that I feel would be more pedagogical and userfriendly than the ones already available.


I'll try to describe my suggestion for the feature the best I can, please contact me if anything is unclear

When the user press submit in a drag&drop exercise, I wish that the correct placed items stayed in place, and the incorrect placed items to be returned to the starting point. This would give the user direct feedback, without eliminating the challenge.


This function would, in my opinion, either replace one of, or at least be a nice addition to, the current alternatives.

The option that give the user a message saying that the items are placed incorrectly , without letting them know if all, a few or just one item are placed incorrectly, is not too userfriendly.

The other option, where the user is unable to place an item in an incorrect droplocation, kind of takes away all the challenge.


As there are a few options for customizing responses already, one wouldn't think that it would be too difficult to enable this function as well in a future update for Storyline:)

I look forward to hearing from you!

Jeanette Brooks

Hi Eilert and many thanks for the insightful feature request! You're right, that would be a really nice enhancement. When I saw your post yesterday I spent a little bit of time playing with a few examples to see if there might be a way to accomplish what you're looking for: that is, give several retries on a drag/drop question, and on each retry, send the incorrect drop items back to their original places but keep the correct ones in their spots. Unfortunately I don't think there's an easy way to do this, and I agree that it would be great if there were an option on the drag/drop question editor for this! So again, we really appreciate you sharing your suggestion!

I also wanted to apologize if you felt your past post on this topic was overlooked on the tutorial comments. We had some unexpected problems with the comment feature on the site over the past few months, and in many cases notifications were not reaching us when comments were posted. :( It was very frustrating and not easily corrected, so we decided to turn off comments on the tutorials and instead encourage folks to post all their questions & comments here in the Forums, where they are more easily managed. The forums also are part of the searchable resources on the site, so it's actually a better place for these types of discussions anyway, because then others can more easily find the posts later and hopefully benefit from them. Anyway, I just wanted to say we're very sorry your initial post didn't get the attention it deserved! It definitely wasn't intentional, and I'm so glad you came here to the forums to post.

Thanks again for the great feature request!

Margaret Morse

A different question about drag and drop. (I'm just learning Storyline, so point me toward the appropriate tutorial, if necessary.) I want to make an exercise where the thing dropped goes "into" the target. I've placed the images so that the container is on top and the drop target (a text box) is behind it, but when I preview, the dragged items show up in front of the container. Is there a different way to do this?

Eilert Torsnes

Hey Margaret!

One thing you can try is to make the drop target transparent when dropped upon. Attempting to solve your issue, I played around with a circle dropped onto a cylinder, and it could work for you.

What I did was adding a trigger, setting the state of the drop target to a state I called transparent, when dropping the drag item on it, Tried adding the file, hopefully it wil be attatched and of some assistance to you

- Eilert

David Anderson

Hi Eilert -

Good request and I can see lots of reasons why you'd want correct objects to remain in place while resetting the incorrect objects. So, while this isn't built-in functionality today, you can achieve your desired interaction using variables.

It requires a little extra effort, but once you have the first drag object/drop target set up, it's really a matter of copy/paste/update trigger for the remaining objects.

Here's a quick example and source file. Let me know if this will work for you.


Eilert Torsnes

Thanks David

That will work, although I would probably screw up with the triggers and spend lots of time before i managed to get it right. I tried something similar without success, which led me to posting hehe...I find the trigger conditions a bit difficult to work with, but I will experiment with your solution to practice my skills:)

Have a great day!

- Eilert

David Anderson

Thanks, Eilert. I hesitated posting that because it is extra. For what it's worth, I enjoyed putting it together just to see if it could be done

If you decide to go with something like this, let us know and I'll be happy to help out.

In the meantime, please consider adding your voice to our adding this as a new feature in future versions.

Rebecca Fleisch Cordeiro

So, I'm a little late on board here. Tx for all the suggestions and comments. But what I've been playing with is Annie's (Annie Jean's?) idea which was to allow the Learner to get a count on correct answers by clicking a button. I liked that and got it working fine. But, the points keep adding up once an item has been dragged onto the correct target if the Learner keeps clicking the button. So you could get a gazillion points just by dragging one item correctly.

I tried to set things up so a point would only b added the first time an item was dropped on the correct target, but was unsuccessful. Couldn't figure out a state or variable that would do that.

I WAS able to prevent additional points being administered if I set the draggable item to be disabled after it was dropped, but that wouldn't allow the Learner to try again.

I was thinking I might create a Screenr on this, but I'd want to do it correctly...the Learner only gets 1 point for each correct answer, but can try again. Anyone? TIA

Eilert Torsnes


I appreciate your solution David, and will most definitely try it out If I'm stuck I'll come calling hehe...

Glad it could be of some use Margaret, you will probably be able to find a better solution but at least with the simple figures it kind of worked hehe. With images I'm not sure, haven't tried.

I haven't played with the counter Rebecca, but it would be a nice feature for the drag and drop:) As Davids solution works I think I'm gonna go with that for now, gives great visual feedback!

- Eilert

Kevin Thorn

Showing correct dropped objects compared to the incorrect ones are not an easy function if at all for the default Drag and Drop interaction.

One way I've skirted around this is to create a custom layer for Correct and Incorrect feedback. On the incorrect layer I had an object with two states: Green check mark = normal, and a red X = incorrect. Duplicate this object for each drag target and set them all to hidden.

On the base layer create a series of True/False variables that match the drag objects to the correct drop targets and set to False. When the correct drag item is dropped on the correct drop target, change the variable to True. Then, on SUBMIT change the state of the checkmarks to 'normal' or 'incorrect' as necessary. 

Result: If all correct the CORRECT layers appears with all green check marks, If incorrect, the INCORRECT layer appears with the correct green check marks AND the incorrect red X's.

On the INCORRECT layer I change the navigation button to "TRY AGAIN" which circles back around to the base layer. The trick here is not to simply "Hide Layer" rather "Jump To Slide" and set the slide to itself. Also, make sure the slide's properties is set to reset to initial state. This will start things over.

The downside to this is it doesn't retain the already correctly placed drag items and learner's have to start over. However, it is kind of effective because it actually shows which ones are correct and which are incorrect.

Rebecca Fleisch Cordeiro

So, I like or liked the counting or tracking idea. And based on what Annie had done, I was thinking Learners could drag an item or two or three, check their work, then perhaps go back and try again. This is not necessarily as EACH item is dropped, but anywhere along the way, and before Submit. So, if there are 7 items, you can drop 3 and check or drop 5 and check...

The trying again works with her approach, but the counting would be off because after dropping just one item you can keep clicking the "check your work" button and the number keeps incrementing up.

This can be "fixed" by changing the state of an item to disabled after it's dropped, but then the Learner can't use that item anymore

But I'm also thinking more educationally and pedagogically and practically now. So, my questions to the community would be:

  • Why would I/we want to do this...set up the count in this way, before submit? True Learners can try again, but they'd be randomly trying again. Would it be better to have an informative pop-up: This red x belongs on the red square because...e.g., the colors match.
  • ---And I guess I'd ask the same question about the elegant solution you came up with David.
  • Why would I necessarily want to set a count up after submit? We can have them go back and review the quiz later. Or, if we want them to have immediate feedback, again, would we want to provide information instead of just a count?

Maybe in the back of my head I'm hearing Tom's: challenge, choice, consequence. And I'm thinking in terms of learning (vs. just getting the answers right of wrong), I'd like the Learners to know why the choice they made resulted in the consequence of an incorrect answer.

But I'm truly posing this question. It's a question about all learning and all tests, not just elearning. What do y'all think? How have you handled your training and testing? Is there a place for something like this as a pretest? As a prep test to see how well the Learner has grasped the material before a final test?

So, David. Long answer to your short question.

Rebecca Fleisch Cordeiro

Kevin, thanks so much for posting this. I appreciate your time. I'm trying to give this a go, but am having some difficulty...sorry.

What I think I've done correctly

So, I have set up a rectangle with the two states (green checkmark, red X) on the incorrect layer. And I have placed it on my two targets with initial state hidden. But, I DO have a question. Am I creating my own (custom) incorrect state for the green X?

I've set up the quiz for unltd. tries

  • Base Layer is set up to resume initial state
  • On the Incorrect layer I've changed the default for continue so that clicking continue brings Learner to Try again layer
  • On the Try Again layer I've changed the default for try again so that clicking try again brings Learner to base layer

What I'm not understanding

"On the base layer create a series of True/False variables that match the drag objects to the correct drop targets and set to False. When the correct drag item is dropped on the correct drop target, change the variable to True. Then, on SUBMIT change the state of the checkmarks to 'normal' or 'incorrect' as necessary. "

So, let's say I have 4 drag objects: A, B, C, D and two targets: AB and CD. A and B belong to target AB; C and D belong to target CD

How am I setting these up? So, taking just A as the example.

  • Create a variable for A, which is T/F and set to False
  • Adjust the variable to True if A is dropped on AB
  • Change the state of rectangle to normal when Learner clicks submit and A is dropped on AB
  • Change the state of rectangle to incorrect when Learner clicks submit and A is dropped on CD

Because at this point I'm not getting desired results, so want to see if I at least get what I'm supposed to be doing.

Phil Mayor

I may be stupid on this but I would add a button with a trigger that adds 1 to a variable when object is drop correct, the first trigger on that button would set the variable to zero, so each time you press it it would give a score, and this would be reset each time you press it.

No need for variables no need to change the state to disabled

This discussion is closed. You can start a new discussion or contact Articulate Support.