Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/437.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 功能运行时不点击';李';_Javascript_Jquery_Oop - Fatal编程技术网

Javascript 功能运行时不点击';李';

Javascript 功能运行时不点击';李';,javascript,jquery,oop,Javascript,Jquery,Oop,我正在做一个基本的猜谜游戏,我想让用户点击一个数字,然后让这个数字成为userAnswer,computerAnswer是一个随机生成的数字,介于1到10之间 无论如何,setVariables()函数在运行时没有用户单击li,即使我已将其设置为单击 任何帮助都会很棒 HTML 动画背景标题|演示2 猜谜游戏 这是一个简单的猜谜游戏 请在下面输入您的姓名 试着在不到5次的时间内猜出这个数字! 1 2 3 4 5 6 7 8 9 10 计算机的号码: 您的号码: 《泰晤士报》猜测: 分数

我正在做一个基本的猜谜游戏,我想让用户点击一个数字,然后让这个数字成为userAnswer,computerAnswer是一个随机生成的数字,介于1到10之间

无论如何,setVariables()函数在运行时没有用户单击li,即使我已将其设置为单击

任何帮助都会很棒

HTML


动画背景标题|演示2
猜谜游戏
这是一个简单的猜谜游戏

请在下面输入您的姓名 试着在不到5次的时间内猜出这个数字!
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

计算机的号码: 您的号码: 《泰晤士报》猜测:
分数: 计算机的答案 用户的答案
JAVASCRIPT

(function(){

  // Players
  // Goals
  // Obstacles
  // Scoring System
  // UI for game
  // Game flow scroing -> points -> etc

  game = {
    init: function() {
      console.log('init');
      this.timesGuessed = 0;
      this.userAnswers = [];
      this.computerNumbers = [];
      this.cacheDom();
      this.setName();
      this.screenTransition();
      this.bindEvents();
    },

    cacheDom: function() {
      this.numbers = $('.numbers-to-guess');
      console.log(this.numbers);
    },

    setName: function() {

      this.userName = $('#name').val();
      this.setNameOnGame(this.userName);

    },

    bindEvents: function() {
      console.log(this.numbers.find('li'));
      this.numbers.find('li').on('click', this.setVariables());
    },

    screenTransition: function() {

      $('.enter-name').addClass('hide');
      $('.game').removeClass('hide');

    },

    setVariables: function() {
      console.log('set');
      console.log($(this));
      // Asks for users answer
      // this.userAnswer = prompt('Pick a number between 1 and 10');
      this.userAnswers.push(userAnswer);

      // Generates a random number between 1 and 10
      // this.randNumber = Math.floor(Math.random() * 10 ) + 1;
      this.computerNumbers.push(this.randNumber);

      // Checks the users number vs the random number
      this.checkAnswer(userAnswer, this.randNumber);
    },

    setNameOnGame: function(userName) {
      document.getElementById('user-name').innerHTML = 'Player Name: ' + userName;
      document.getElementById('user').innerHTML = userName + ' Answers';
      // document.getElementById('display-name').innerHTML = 'Hello ' + userName + '! Please pick a number below.';
    },

    checkAnswer: function(userAnswer, randNumber) {

      this.timesGuessed++
      this.render(userAnswer, randNumber, this.timesGuessed);

      if (userAnswer > randNumber) {
        alert('You Guessed To High, Guess Again...');
        document.getElementById('message').innerHTML = "You guessed to high";
        // this.setVariables();

      } else if (userAnswer < randNumber) {
        alert('You Guessed To Low, Guess Again...')
        document.getElementById('message').innerHTML = "You guessed too low";
        // this.setVariables();

      } else if(userAnswer = randNumber) {
        alert('You Got It Right!');
        document.getElementById('message').innerHTML = "You Guessed Right!";
      }

      this.score(this.timesGuessed);
      this.showAnswers();
      this.restartGame();

    },

    render: function(userAnswer, randNumber, timesGuessed) {
      document.getElementById('demo1').innerHTML = randNumber;
      document.getElementById('your-number').innerHTML = userAnswer;
      document.getElementById('guessed').innerHTML = timesGuessed;

    },

    score: function(timesGuessed) {
      if(timesGuessed <= 5) {
        document.getElementById('count').innerHTML = "You Won! It took you " + this.timesGuessed + " try(s) to guess the right number!";
      } else if (timesGuessed > 5) {
        document.getElementById('count').innerHTML = "Sorry! You Lost... It took you " + this.timesGuessed + " try(s) to guess the right number.";
      }
    },

    showAnswers: function() {
    // Show all answers
      for (var i = 0; i < this.computerNumbers.length; i++) {
        var listItem = document.createElement('TD');
        var listItemText = document.createTextNode(this.computerNumbers[i]);
        listItem.appendChild(listItemText);
        document.getElementById('computer-answers').appendChild(listItem);
      }

     // Show all guesses
      for (var i = 0; i < this.userAnswers.length; i++) {
        var listItem = document.createElement('TD');
        var listItemText = document.createTextNode(this.userAnswers[i]);
        listItem.appendChild(listItemText);
        document.getElementById('user-answers').appendChild(listItem);
      }
    },

    restartGame: function() {
      document.getElementById('start-btn').innerHTML = 'Play Again';
    }
  };

})();
(函数(){
//球员
//目标
//障碍物
//评分系统
//游戏用户界面
//游戏流程交叉->积分->等
游戏={
init:function(){
console.log('init');
this.timesgussed=0;
this.userAnswers=[];
这个是.computerNumbers=[];
this.cacheDom();
这个.setName();
这个.screenTransition();
这是bindEvents();
},
cacheDom:function(){
this.numbers=$('.number to guess');
console.log(this.number);
},
setName:function(){
this.userName=$('#name').val();
this.setNameOnGame(this.userName);
},
bindEvents:function(){
console.log(this.numbers.find('li'));
this.numbers.find('li')。在('click',this.setVariables())上;
},
screenTransition:function(){
$('.enter name').addClass('hide');
$('.game').removeClass('hide');
},
setVariables:function(){
console.log('set');
log($(this));
//询问用户答案
//this.userAnswer=prompt('选择一个介于1和10之间的数字');
this.userAnswers.push(userAnswer);
//生成一个介于1和10之间的随机数
//this.randNumber=Math.floor(Math.random()*10)+1;
this.computernumber.push(this.randNumber);
//检查用户编号与随机编号
this.checkAnswer(userAnswer,this.randNumber);
},
setNameOnName:函数(用户名){
document.getElementById('user-name')。innerHTML='Player name:'+用户名;
document.getElementById('user').innerHTML=userName+'Answers';
//document.getElementById('display-name')。innerHTML='Hello'+userName+'!请在下面选择一个数字';
},
checkAnswer:函数(userAnswer,randN
(function(){

  // Players
  // Goals
  // Obstacles
  // Scoring System
  // UI for game
  // Game flow scroing -> points -> etc

  game = {
    init: function() {
      console.log('init');
      this.timesGuessed = 0;
      this.userAnswers = [];
      this.computerNumbers = [];
      this.cacheDom();
      this.setName();
      this.screenTransition();
      this.bindEvents();
    },

    cacheDom: function() {
      this.numbers = $('.numbers-to-guess');
      console.log(this.numbers);
    },

    setName: function() {

      this.userName = $('#name').val();
      this.setNameOnGame(this.userName);

    },

    bindEvents: function() {
      console.log(this.numbers.find('li'));
      this.numbers.find('li').on('click', this.setVariables());
    },

    screenTransition: function() {

      $('.enter-name').addClass('hide');
      $('.game').removeClass('hide');

    },

    setVariables: function() {
      console.log('set');
      console.log($(this));
      // Asks for users answer
      // this.userAnswer = prompt('Pick a number between 1 and 10');
      this.userAnswers.push(userAnswer);

      // Generates a random number between 1 and 10
      // this.randNumber = Math.floor(Math.random() * 10 ) + 1;
      this.computerNumbers.push(this.randNumber);

      // Checks the users number vs the random number
      this.checkAnswer(userAnswer, this.randNumber);
    },

    setNameOnGame: function(userName) {
      document.getElementById('user-name').innerHTML = 'Player Name: ' + userName;
      document.getElementById('user').innerHTML = userName + ' Answers';
      // document.getElementById('display-name').innerHTML = 'Hello ' + userName + '! Please pick a number below.';
    },

    checkAnswer: function(userAnswer, randNumber) {

      this.timesGuessed++
      this.render(userAnswer, randNumber, this.timesGuessed);

      if (userAnswer > randNumber) {
        alert('You Guessed To High, Guess Again...');
        document.getElementById('message').innerHTML = "You guessed to high";
        // this.setVariables();

      } else if (userAnswer < randNumber) {
        alert('You Guessed To Low, Guess Again...')
        document.getElementById('message').innerHTML = "You guessed too low";
        // this.setVariables();

      } else if(userAnswer = randNumber) {
        alert('You Got It Right!');
        document.getElementById('message').innerHTML = "You Guessed Right!";
      }

      this.score(this.timesGuessed);
      this.showAnswers();
      this.restartGame();

    },

    render: function(userAnswer, randNumber, timesGuessed) {
      document.getElementById('demo1').innerHTML = randNumber;
      document.getElementById('your-number').innerHTML = userAnswer;
      document.getElementById('guessed').innerHTML = timesGuessed;

    },

    score: function(timesGuessed) {
      if(timesGuessed <= 5) {
        document.getElementById('count').innerHTML = "You Won! It took you " + this.timesGuessed + " try(s) to guess the right number!";
      } else if (timesGuessed > 5) {
        document.getElementById('count').innerHTML = "Sorry! You Lost... It took you " + this.timesGuessed + " try(s) to guess the right number.";
      }
    },

    showAnswers: function() {
    // Show all answers
      for (var i = 0; i < this.computerNumbers.length; i++) {
        var listItem = document.createElement('TD');
        var listItemText = document.createTextNode(this.computerNumbers[i]);
        listItem.appendChild(listItemText);
        document.getElementById('computer-answers').appendChild(listItem);
      }

     // Show all guesses
      for (var i = 0; i < this.userAnswers.length; i++) {
        var listItem = document.createElement('TD');
        var listItemText = document.createTextNode(this.userAnswers[i]);
        listItem.appendChild(listItemText);
        document.getElementById('user-answers').appendChild(listItem);
      }
    },

    restartGame: function() {
      document.getElementById('start-btn').innerHTML = 'Play Again';
    }
  };

})();
this.numbers.find('li').on('click', this.setVariables());
this.numbers.find('li').on('click', this.setVariables.bind(this));
 .... .on('click', setVariables )