dimanche 26 juin 2016

Hi can someone please help me to make this same pop up in Ajax


Hi i Have a popup window that done using HTML/JS/CSS can someone please help me to make the same with Ajax. as i need to hide the address bar in the popup but it seems unless i use Ajax its not possible... i'm not so familiar with Ajax. would really appreciate it.

Main Page HTML

<p><a onclick="popup();">Check Your Eligibility and Apply for membership.</a></p>       

Main Page JS

<script>        
    function popup() {
        window.open("popup.html", "child", "toolbar=no,scrollbars=no,resizable=yes,top=200,left=400,width=400,height=275,location=no, title=no");
    }
</script>

POPUP Window HTML

<body>
    <div class="popup_contact_wrapper">
        <div id="contactWrapper_popup">             
            <div id='container'>
                <div id='title'>
                    <br/>
                    <h2 class="title">Check Eligibility</h1>
                </div>
                <br/>
                <div id='quiz'></div>
                <div class='button' id='next'><a href='#'>Next</a></div>
                <div class='button' id='prev'><a href='#'>Prev</a></div>
                <div class='button' id='start'> <a href='#'>Start Over</a></div>                    
            </div>
        </div>
     </div>
    <script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js'></script>      
</body>

POP UP Window JSS.

<script>
    (function() {
          var questions = [{
            question: "Is your age between 18 and 70 years (inclusive both)?",
            choices: ["Yes","No"],
            correctAnswer:0
          }, {
            question: "Are you a Resident of Kandy / NE/ Matale/ Kegalle/ Ratnapura / Kurunagala Districts?  ",
            choices: ["Yes","No"],
            correctAnswer:0
          }];

          var questionCounter = 0; //Tracks question number
          var selections = []; //Array containing user choices
          var quiz = $('#quiz'); //Quiz div object

          // Display initial question
          displayNext();

          // Click handler for the 'next' button
          $('#next').on('click', function (e) {
            e.preventDefault()

            // Suspend click listener during fade animation
            if(quiz.is(':animated')) {        
              return false;
            }
            choose();

            // If no user selection, progress is stopped
            if (isNaN(selections[questionCounter])) {
              alert('Please make a selection!');
            } else {
              questionCounter++;
              displayNext();
            }
          });

          // Click handler for the 'prev' button
          $('#prev').on('click', function (e) {
            e.preventDefault();

            if(quiz.is(':animated')) {
              return false;
            }
            choose();
            questionCounter--;
            displayNext();
          });

          // Click handler for the 'Start Over' button
          $('#start').on('click', function (e) {
            e.preventDefault();

            if(quiz.is(':animated')) {
              return false;
            }
            questionCounter = 0;
            selections = [];
            displayNext();
            $('#start').hide();
          });

          // Animates buttons on hover
          $('.button').on('mouseenter', function () {
            $(this).addClass('active');
          });
          $('.button').on('mouseleave', function () {
            $(this).removeClass('active');
          });

          // Creates and returns the div that contains the questions and 
          // the answer selections
          function createQuestionElement(index) {
            var qElement = $('<div>', {
              id: 'question'
            });

            var header = $('<h4>Question ' + (index + 1) + ':</h4>');
            qElement.append(header);

            var question = $('<p>').append(questions[index].question);
            qElement.append(question);

            var radioButtons = createRadios(index);
            qElement.append(radioButtons);

            return qElement;
          }

          // Creates a list of the answer choices as radio inputs
          function createRadios(index) {
            var radioList = $('<ul>');
            var item;
            var input = '';
            for (var i = 0; i < questions[index].choices.length; i++) {
              item = $('<li>');
              input = '<input type="radio" name="answer" value=' + i + ' />';
              input += questions[index].choices[i];
              item.append(input);
              radioList.append(item);
            }
            return radioList;
          }

          // Reads the user selection and pushes the value to an array
          function choose() {
            selections[questionCounter] = +$('input[name="answer"]:checked').val();
          }

          // Displays next requested element
          function displayNext() {
            quiz.fadeOut(function() {
              $('#question').remove();

              if(questionCounter < questions.length){
                var nextQuestion = createQuestionElement(questionCounter);
                quiz.append(nextQuestion).fadeIn();
                if (!(isNaN(selections[questionCounter]))) {
                  $('input[value='+selections[questionCounter]+']').prop('checked', true);
                }

                // Controls display of 'prev' button
                if(questionCounter === 1){
                  $('#prev').show();
                } else if(questionCounter === 0){

                  $('#prev').hide();
                  $('#next').show();
                }
              }else {
                var scoreElem = displayScore();
                quiz.append(scoreElem).fadeIn();
                $('#next').hide();
                $('#prev').hide();
                $('#start').show();
              }
            });
          }

          // Computes score and returns a paragraph element to be displayed
          function displayScore() {
            var score = $('<p>',{id: 'question'});

            var numCorrect = 0;
            for (var i = 0; i < selections.length; i++) {
              if (selections[i] === questions[i].correctAnswer) {
                numCorrect++;
              }
            }
            if (numCorrect==2) {
                score.append('You are Eligible to Apply for the Beneficiary Programme. </br> <a href="application.pdf" target="_blank">Download Application</a>');
                return score;
            }
            else {
                score.append('We are Sorry. You are  Not Eligible to Apply for the Beneficiary Programme.');
                return score;
            }

          }
        })();
</script>

Aucun commentaire:

Enregistrer un commentaire