不需要突出显示HTML元素的选择

时间:2016-01-28 21:37:17

标签: javascript jquery html css

我正在制作一个可以玩游戏SET的网站(只是为了好玩)。现在出现了一个我不明白的间歇性问题。

用户通过点击它们来选择正方形(该板由浮动的DIV元素组成,其中包含图像)。单击时,DIV的边框变为黄色。

这里发生的不受欢迎的行为是当用户点击第一个DIV突出显示它时,另一个div会突出显示(见下文)。最糟糕的是,问题只是间歇性地发生,可能每五次用户开始选择一组。我不确定发布什么代码,因为我真的无法猜出错误的来源是什么。

以下是使方块亮起的代码,虽然我完全不确定错误是否在此代码中:

var myDown = isIOS ? "touchstart" : "mousedown";
$(".cell").on(myDown,function(event) {
  if (declared == true) {
    if ($(this).hasClass('on')) {
      $(this).removeClass('on');
    } else {
      if ($('.cell.on').length <3) {
        $(this).addClass('on');
      }
    }
    if ($('.cell.on').length == 3) {
      $submitButton.addClass('ready');
      setTimeout(delayedSubmit,400);
    }
  }
});

以下是问题的屏幕截图:

Problem in action

蓝色突出显示的方块根本不应突出显示。我点击第三列第二行的正方形,该正方形有一个黄色边框,表示它已被点击。

最后,我想我只是希望其他人会有类似的奇怪,不需要的DIV突出显示,以便提出可能的原因。

编辑:这里有一些HTML

<div id="board" class="">
  <div id="A1" class="cell">
    <div class="box">
      <a class="stretchy no-limit" href="#"><img class="spacer" src="/img/spacer.png" alt="spacer"><img class="sprite one empty" id="c0012" alt="card" src="/img/12.png"></a>
    </div>
  </div>
  <div id="B1" class="cell">
    <div class="box">
      <a class="stretchy no-limit" href="#"><img class="spacer" src="/img/spacer.png" alt="spacer"><img class="sprite three empty" id="c2001" alt="card" src="/img/01.png"></a>
    </div>
  </div>
  <div id="C1" class="cell">
    <div class="box">
      <a class="stretchy no-limit" href="#"><img class="spacer" src="/img/spacer.png" alt="spacer"><img class="sprite one solid" id="c0202" alt="card" src="/img/02.png"></a>
    </div>
  </div>

1 个答案:

答案 0 :(得分:1)

如果我理解了这个问题,你可以通过

来解决这个问题