单击div时,JavaScript变量未正确相加

单击div时,JavaScript变量未正确相加,javascript,jquery,if-statement,Javascript,Jquery,If Statement,我正在为一个彩弹队制作一个网站。主页上有一小部分显示下一事件的日期 这是相关的HTML代码: 原链图诺 MIPL-E4 20 juillet 2013 米拉贝尔,QC 我使用javascript制作了一个小函数,当用户单击左箭头或右箭头时,可以更改不同标题的内容。这里的目标是让用户看到即将到来的事件,并可以回到以前的日期 当我单击右箭头一次时,日期会更改,但如果我再次单击右箭头,日期将保持在第二个日期。但是,如果我单击左箭头,它将返回到第一个日期。我可以在第一个和第二个日期之间来回,但从第二

我正在为一个彩弹队制作一个网站。主页上有一小部分显示下一事件的日期

这是相关的HTML代码:


原链图诺
MIPL-E4
20 juillet 2013
米拉贝尔,QC
我使用javascript制作了一个小函数,当用户单击左箭头或右箭头时,可以更改不同标题的内容。这里的目标是让用户看到即将到来的事件,并可以回到以前的日期

当我单击右箭头一次时,日期会更改,但如果我再次单击右箭头,日期将保持在第二个日期。但是,如果我单击左箭头,它将返回到第一个日期。我可以在第一个和第二个日期之间来回,但从第二个日期到第三个日期时,它似乎不会注册附加值

我知道一定有更好的方法,但我迷路了,我还需要添加其他日期

以下是JS:

var numero_date=0;
函数clickDate(){
if($(this.hasClass(“gauche”)){
数字日期--;

如果(数字日期)问题在于您使用赋值运算符而不是比较运算符
=

更改行,如下所示

else if (numero_date = 2) {

每当它穿过
numero_date=1
(用于比较
numero_date==1
)时,该变量的值被设置为1,并且从那里开始不会改变。在if条件下,它总是将其设置为1,并且从不向前移动

我不清楚您的要求,但您可以使用诸如、、等数组函数来管理下一个/上一个按钮和数据循环,而不是检查值、递增/递减计数器:

var arrEvents = []; //Set up the array of events
  arrEvents.push({
      'event': 'MIPL E4',
          'date': '20 juillet 2013',
          'venue': 'Mirabel, QC'
  },{
      'event': 'PSP',
          'date': '16-18 août 2013',
          'venue': 'Riverside, CA'
  },{
      'event': 'MIPL Finales',
          'date': '31 août 2013',
          'venue': 'Mirabel, QC'
  });

  function clickDate() {
      var obj;

      if ($(this).is(".gauche")) {
          obj = arrQuestions.shift(); //get the element from top
          arrQuestions.push(obj); //push it to the end
          obj = arrQuestions[0];

      } else {
          obj = arrQuestions.pop(); //get the element from end
          arrQuestions.unshift(obj); //ush it to the top
          obj = arrQuestions[arrQuestions.length-1];
      }

      console.log(JSON.stringify(arrQuestions));
      document.getElementById("h2date").innerHTML = obj.event;
      document.getElementById("h3date").innerHTML = obj.date;
      document.getElementById("h4date").innerHTML = obj.venue;


  }

@MathieuDésilets如果您认为这解决了您的问题,请记住标记为答案。@MathieuDésilets刚刚更新了第二个示例的小提琴和代码。
else if (numero_date = 2) {
else if (numero_date == 2) {
var arrEvents = []; //Set up the array of events
  arrEvents.push({
      'event': 'MIPL E4',
          'date': '20 juillet 2013',
          'venue': 'Mirabel, QC'
  },{
      'event': 'PSP',
          'date': '16-18 août 2013',
          'venue': 'Riverside, CA'
  },{
      'event': 'MIPL Finales',
          'date': '31 août 2013',
          'venue': 'Mirabel, QC'
  });

  function clickDate() {
      var obj;

      if ($(this).is(".gauche")) {
          obj = arrQuestions.shift(); //get the element from top
          arrQuestions.push(obj); //push it to the end
          obj = arrQuestions[0];

      } else {
          obj = arrQuestions.pop(); //get the element from end
          arrQuestions.unshift(obj); //ush it to the top
          obj = arrQuestions[arrQuestions.length-1];
      }

      console.log(JSON.stringify(arrQuestions));
      document.getElementById("h2date").innerHTML = obj.event;
      document.getElementById("h3date").innerHTML = obj.date;
      document.getElementById("h4date").innerHTML = obj.venue;


  }