Please add below lines of code in the file named written below to test.
Your first index.html file
<html>
<head>
<link rel="stylesheet" href="css/style.css" />
<link rel="stylesheet" href="JS/jquery-ui.css">
<script type="text/javascript" src="JS/jquery-1.10.2.js"></script>
<script type="text/javascript" src="JS/jquery-ui.js"></script>
<script type="text/javascript" src="JS/activity.js"></script>
<script type="text/javascript" src="JS/jquery.ui.touch-punch.js"></script>
</head>
<body>
<div id="masterDiv">
<div id="lockButtonDiv"></div>
<div id="header">
<div id="headerText"></div>
</div>
<div class="dragActivity"></div>
<a tabindex="7" name="position6" class="fButton" id="finshButton"><span class="mButton" >FINISHED</span></a>
<div id="bottom">
<div id="bottomText1"></div>
<div>
<span id="resetButton">RESET</span>
</div>
</div>
</div>
</body>
</html>
Now activity.js class // playercontroller
var posArr = new Array();
var clonePosArr = new Array();
var ansArr = [4, 5, 2, 6, 3, 6];
var bRevert = true;
$(document).ready(function() {
loadLabels();
setTimeout(function(){
RegisterEvents()
}, 500);
});
var elementLength
function loadLabels(){
//alert("ExercisesOther");
$(".dragActivity").empty();
var jsonLoad1 = "JS/data.json";
var tempItems = "";
$.ajax({
url: jsonLoad1,
type: "post",
async:true,
dataType:"json",
data: {},
success: function(data){
// alert("success"+data.data1.length);
$("div#headerText").text(data.headerTextData);
$("div#bottomText1").text(data.footerTextData);
elementLength = data.data1.length
for (var i = 0; i < elementLength; i++) {
j=i+1;
tempItems += '<div id="dvDrop'+j+'" class="dvDrop"></div>';
tempItems += '<div class="btn" id="btnP'+i+'" tabindex="'+j+'"><span id="mButton6" class="mButton">'+data.data1[i]+'</span></div>';
tempItems += '<div id="ans'+j+'" class="answer"></div>';
};
$(".dragActivity").append(tempItems);
}
});
}
function getPosition() {
posArr = new Array();
for (var i = 0; i <= elementLength-1; i++) {
posArr.push($("#btnP" + i).position());
};
clonePosArr = posArr;
}
function handelButtonEvents(e)
{
switch (e.type)
{
case "mousedown":
$(this).css("background-color","blue");
break;
case "mouseup":
$(this).css("background-color","grey");
break;
case "mouseover":
$(this).css("background-color","grey");
break;
case "mouseout":
$(this).css("background-color","white");
break;
case "keypress":
break;
}
}
function giveAnswers()
{
var aTemp = new Array();
$(".btn").each(function()
{
var data = ($(this).attr('holder') != 'null')?Number(String($(this).attr('holder')).slice(6,7)):'null'
aTemp.push(data)
})
return aTemp;
}
function RegisterEvents()
{
console.log("RegisterEvents");
//console.log('RegisterEvents')
$("#finshButton,#resetButton").bind("mouseover mouseout keypress keyup mouseup mousedown ",handelButtonEvents);
getPosition();
$("#btnP0,#btnP1,#btnP2,#btnP3,#btnP4,#btnP5").attr("holder",'null');
$("#btnP0,#btnP1,#btnP2,#btnP3,#btnP4,#btnP5").attr("pos",'');
$("#btnP0,#btnP1,#btnP2,#btnP3,#btnP4,#btnP5").draggable({
containment: "#masterDiv",
revert: function()
{
//console.log('revert Called')
if(bRevert)
{
// console.log('revert Called inside')
var pos = String($(this).attr('pos')).split('|')
$(this).css('top',Number(pos[0]))
$(this).css('left',Number(pos[1]))
}
},
start:function(){
$(this).attr('pos',$(this).position().top+"|"+$(this).position().left)
$(this).css("z-index","20");
bRevert = true;
},
revertDuration: 0
});
$("#dvDrop1,#dvDrop2,#dvDrop3,#dvDrop4,#dvDrop5,#dvDrop6").attr("bFilled","null");
$("#dvDrop1,#dvDrop2,#dvDrop3,#dvDrop4,#dvDrop5,#dvDrop6").droppable({
drop: function(event, ui) {
$(ui.draggable).css("z-index","10");
if ($(this).attr("bFilled")!="true")
{
if($(ui.draggable).attr('holder') != 'null')
{
$('#'+$(ui.draggable).attr('holder')).attr('bFilled','null')
$(ui.draggable).attr('holder','null')
}
var dropId = $(this).attr("id");
$(ui.draggable).attr("holder",dropId);
$(this).attr("bFilled","true")
var leftPos = $(this).position().left
var topPos = $(this).position().top
ui.draggable.css('left', leftPos);
ui.draggable.css('top', topPos)
$(ui.draggable).attr('pos',topPos+"|"+leftPos)
bRevert = false;
}
else
{
bRevert = true;
}
}
});
$("#resetButton").click(function() {
$("#lockButtonDiv").css("display","none");
resetButtonNames();
});
$("#finshButton").click(function() {
$("#lockButtonDiv").css("display","block");
for(var i=1;i<=6;i++)
{
if($("#dvDrop"+i).attr("bFilled")=="null")
{
console.log("here <<<<<<<<<<<<<<<<");
$(".answer").removeClass("right wrong");
}
}
var userAnswers = giveAnswers();
for(var i=0;i<userAnswers.length;i++)
{
if(userAnswers[i] == ansArr[i])
{
$("#ans"+userAnswers[i]).addClass("right");
}
else
{
$("#ans"+userAnswers[i]).addClass("wrong");
}
}
});
}
function resetButtonNames() {
$("#dvDrop1,#dvDrop2,#dvDrop3,#dvDrop4,#dvDrop5,#dvDrop6").attr("bFilled","null");
$("#btnP0,#btnP1,#btnP2,#btnP3,#btnP4,#btnP5").attr("holder",'null');
for (var k = 1; k <= elementLength; k++) {
$("#ans" + k).removeClass("right wrong");
}
for (var i = 0; i <= elementLength-1; i++) {
$("#btnP" + i).css("top", posArr[i].top).css("left", posArr[i].left);
}
for (var i = elementLength-1; i >= 0; i--) {
var j = Math.floor(Math.random() * (i + 1));
var temp = clonePosArr[i];
clonePosArr[i] = clonePosArr[j];
clonePosArr[j] = temp;
// console.log(i);
$("#btnP" + i).css("top", clonePosArr[i].top).css("left", clonePosArr[i].left);
}
}