Pastebin launched a little side project called VERYVIRAL.com, check it out ;-) Want more features on Pastebin? Sign Up, it's FREE!
Guest

Untitled

By: a guest on Jan 4th, 2013  |  syntax: None  |  size: 2.35 KB  |  views: 16  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. (function($) {
  2.     $.fn.formToWizard = function(options) {
  3.         options = $.extend({
  4.             submitButton: ""
  5.         }, options);
  6.  
  7.         var element = this;
  8.  
  9.         var steps = $(element).find("fieldset");
  10.         var count = steps.size();
  11.         var submmitButtonName = "#" + options.submitButton;
  12.         $(submmitButtonName).hide();
  13.  
  14.         // 2
  15.         steps.each(function(i) {
  16.             $(this).wrap("<div id='step" + i + "'></div>");
  17.             $(this).append("<p id='step" + i + "commands'></p>");
  18.  
  19.  
  20.  
  21.             if (i == 0) {
  22.                 createNextButton(i);
  23.                 selectStep(i);
  24.             }
  25.             else if (i == count - 1) {
  26.                 $("#step" + i).hide();
  27.                 createPrevButton(i);
  28.             }
  29.             else {
  30.                 $("#step" + i).hide();
  31.                 createPrevButton(i);
  32.                 createNextButton(i);
  33.             }
  34.         });
  35.  
  36.         function createPrevButton(i) {
  37.             var stepName = "step" + i;
  38.             $("#" + stepName + "commands").append("<a href='#' id='" + stepName + "Prev'>Back</a>");
  39.  
  40.             $("#" + stepName + "Prev").bind("click", function(e) {
  41.                 $("#" + stepName).hide();
  42.                 $("#step" + (i - 1)).show(function() {
  43.                     $('.slide').animate({
  44.                         left: "0"
  45.                     }, 500);
  46.                 });
  47.                 $(submmitButtonName).hide();
  48.                 selectStep(i - 1);
  49.             });
  50.         }
  51.  
  52.         function createNextButton(i) {
  53.             var stepName = "step" + i;
  54.             $("#" + stepName + "commands").append("<a href='#' id='" + stepName + "Next' class='next'>Next</a>");
  55.  
  56.             $("#" + stepName + "Next").bind("click", function(e) {
  57.                 $("#" + stepName).hide();
  58.                 $("#step" + (i + 1)).show(function() {
  59.                     $('.slide').animate({
  60.                         left: "0"
  61.                     }, 500);
  62.                 });
  63.                 if (i + 2 == count) $(submmitButtonName).show();
  64.                 selectStep(i + 1);
  65.             });
  66.         }
  67.  
  68.         function selectStep(i) {
  69.             $("#steps li").removeClass("current");
  70.             $("#stepDesc" + i).addClass("current");
  71.         }
  72.  
  73.     }
  74.         })(jQuery);
  75.  
  76.     $("#SignupForm").formToWizard({ submitButton: 'SaveAccount' })
  77.        
  78. $("#" + stepName).animate({
  79.     left: "100%"
  80. }, 0);