在单独的函数调用中引用当前对象(onclick for div)

时间:2016-10-13 07:52:22

标签: javascript html function

我正在设计一个简单的井字游戏,并遇到了一些问题。 我使用了div的网格作为游戏牌,每个牌都有自己的'onclick'属性。

我想在单击一个tile时调用几个函数并定义一个函数main()来处理它;但是正如您将在下面看到的,我的一个函数 - placeUserTile(el)依赖于对当前对象的引用。在这种情况下,已经选择了div。

如何从 main()函数中引用 placeUserTile(el)中的 el

的index.html

    <!-- Need to call main() func with current object reference 
         passed in to my placeUserTile() function -->
    <div class="col-xs-6 col-md-12 tile" id="r1c1" onclick="main(this)"></div>

master.js

    function placeUserTile(el){
    var tileIsEmpty  = true;
    // If the selected tile has at least one child,
    // do not allow placement of another tile.
    if (el.firstChild) {
     tileIsEmpty = false;
    }
    if(tileIsEmpty === true){
     cloneUserIcon();
    }
    el.appendChild(newUserIcon);
    newUserIcon.style.display = null;
    }

    function main(){
    evaluateTurn();
    placeUserTile(el);
    }    

1 个答案:

答案 0 :(得分:0)

这样做

function placeUserTile(el){
   var tileIsEmpty  = true;
   // If the selected tile has at least one child,
   // do not allow placement of another tile.
   if (el.firstChild) {
      tileIsEmpty = false;
   }
   if(tileIsEmpty === true){
      cloneUserIcon();
   }
   el.appendChild(newUserIcon);
   newUserIcon.style.display = null;
}

function main(targetElement){
   evaluateTurn();
   placeUserTile(targetElement);
}