使用回调函数进行查询

时间:2019-01-02 09:35:20

标签: javascript

我正在尝试创建一个基本的井字游戏,并为网格创建了九个段落元素。我创建了三个函数来检查X,O和平局的赢家。但是我被困在将X和O放在盒子里。据我所知,“ this”关键字可以在这些框中添加相同的内容。三个功能(winnerX,O和平局)正在检查胜利和平局,并且工作正常。现在,我还要传递第四个函数,该函数传递X和O的值。有人可以建议我该怎么做吗? (var xvalue的初始值为X。

 
function alternateX (a) {
    
    
    if (xValue === "x") {
        
        xValue = "0";
        a.textContent = xValue;
        a.style.pointerEvents  = "none"; 
    }
    
    else {
    xValue = "x";
        a.textContent = xValue;
    a.style.pointerEvents  = "none";
    } 
}
<p class="box1" onclick="boxClick(winnerX, winnerO, draw)">x</p>

1 个答案:

答案 0 :(得分:0)

屏幕重绘通常会延迟到导致它们的功能完成为止。因此,延迟警报。

function handleClick0(){
  document.querySelector('#s0').textContent = 'clicked';
  alert('clicked');
}

function handleClick1(){
  document.querySelector('#s1').textContent = 'clicked';
  setTimeout(function(){alert('clicked')},0);
}
<button onclick="handleClick0()">Sequential</button>
<span id="s0"></span>
<br>
<button onclick="handleClick1()">Delayed</button>
<span id="s1"></span>

您应该发布最少的代码来演示该问题。 OP太多了。