var correct = { opt0:"ans1", opt1:"ans2", opt2:"ans0"} // Correct answer
var answer = { opt0:"tmp0", opt1:"tmp1", opt2:"tmp2"} // Answer
// Pick up
function mark(event)
{
var points = 0; //
var max = 3; //
for (key in correct) {
points += correct[key] == answer[key] ? 1: 0;
}
var score = (points / max * 100);
var result = ("result");
= (score > 70? "Certified": "Failed") +":" + score +"%";
}
// Initialization
function init(event)
{
var dropzone = [ "ans0", "ans1", "ans2", �
"tmp0", "tmp1", "tmp2"];
for (id in dropzone) {
new (dropzone[id]);
}
var draggable = [ "opt0", "opt1", "opt2"]; �
Draggable = function(id, sGroup) {
(id, sGroup);
}
= new ();
= function(draggable, dropzone) {
if ((/^opt[012]$/)) {
return false;
}
for (key in answer) {
if (answer[key] == ) {
return false;
}
}
return true;
}
= function(x, y) {
((), "opacity", 0.5);
}
= function(e, id) {
var dropzone = (id);
var draggable = ();
if ((draggable, dropzone)) {
= "orange";
}
}
= function(e, id) {
var dropzone = (id);
= "white";
}
= function(e, id) {
var dropzone = (id);
var draggable = ();
if ((draggable, dropzone)) {
= "white";
(draggable);
answer[]= ;
}
}
= function(e) {
var draggable = ();
(draggable, "opacity", 1.0);
= "0px";
= "0px";
}
for (id in draggable) {
new Draggable(draggable[id]);
}
// The binding button triggers the event and calculates the score
("submit", "click", mark);
}
(window, "load", init);