jQuery.fn.swapWith = function(to) { return this.each(function() { var copy_to = $(to).clone(true); var copy_from = $(this).clone(true); $(to).replaceWith(copy_from); $(this).replaceWith(copy_to); }); }; $( document ).ready(function() { puzzinit(); }); function puzzinit(){ $("#puzzcaptchaform").submit(function(){ $.get( "puzzcaptcha/puzzgen.php", { a: 'ver', pc: $("#pc").val(), ans: $("#ans").val() }, function( data ) { //alert($("#ans").val()); //alert((new XMLSerializer()).serializeToString(data)); var passed = $(data).find('passed').text(); if(passed=="true"){ $("#response").html("Success!").show().delay(500).fadeOut(1000); } else if(passed=="false") { $("#response").html("Sorry, that was incorrect. Please try again.").show().delay(500).fadeOut(1000); } else { $("#response").html(passed).show().delay(500).fadeOut(1000); } setTimeout(function(){$.get( "/puzzcaptcha/puzzgen.php", makepuzz )}, 1000); }); return false; }); $.get( "/puzzcaptcha/puzzgen.php", makepuzz ); } function makepuzz( data ) { var pid = $(data).find('puzzid').text(); $("#pc").val(pid); $("#ans").val(""); $('#puzza').html(""); $('#puzzb').html(""); $('#puzzc').html(""); $('#puzzd').html(""); $('#puzza').append(''); $('#puzzb').append(''); $('#puzzc').append(''); $('#puzzd').append(''); $('.puzzimga,.puzzimgb,.puzzimgc,.puzzimgd').draggable({stack: ".puzzimgs", revert: "invalid", containment: "#puzzle"}); $('#puzza').droppable({accept: ".puzzimgb,.puzzimgc,.puzzimgd,.puzzimga", tolerance: "pointer", drop: dropped}); $('#puzzb').droppable({accept: ".puzzimga,.puzzimgc,.puzzimgd,.puzzimgb", tolerance: "pointer", drop: dropped}); $('#puzzc').droppable({accept: ".puzzimga,.puzzimgb,.puzzimgd,.puzzimgc", tolerance: "pointer", drop: dropped}); $('#puzzd').droppable({accept: ".puzzimga,.puzzimgb,.puzzimgc,.puzzimgd", tolerance: "pointer", drop: dropped}); $('#puzzle').show(); } function dropped( event, ui ) { var swap1 = ui.draggable.clone(); var swap2 = $(this).children("img").clone(); $(swap1).removeAttr('style'); $(swap2).removeAttr('style'); ui.draggable.parent().append(swap2); //$(swap2).draggable({stack: ".puzzimgs", revert: "invalid", containment: "#puzzle"}); //alert($(ui).text()); //alert(ui.draggable.attr('id')); //alert($(this).attr('id')); ui.draggable.remove(); $(this).children().remove(); //$('#puzzb').append(''); //$('#puzza').append(''); $(this).append(swap1); $('.puzzimga,.puzzimgb,.puzzimgc,.puzzimgd').draggable({stack: ".puzzimgs", revert: "invalid", containment: "#puzzle"}); //$(swap1).draggable({stack: ".puzzimgs", revert: "invalid", containment: "#puzzle"}); //$("#puzzimga").detach(); //$("#puzzimgb").detach(); //$("#puzza").append($("#puzzimgb")); //$("#puzzb").append($("#puzzimga")); //var swap1 = ui.draggable.clone().wrap('
').parent().html(); }