从javascript代码调用的2个或更多点击事件之间不同

时间:2014-11-03 17:24:51

标签: javascript-events javascript

var option,
Switch (option)
{
   case "A":
   document.getElementById("cell").click();
   break;

   case "B":
    document.getElementById("cell").click();
    break;

   default:
   break;
},

clickEventHandlerForCell(event){

//When case A
alert("I am fired from case A");

// When case B
alert("I am fired from case B");

}

从Javascript代码中单击一个按钮。如何将值发送到处理函数来告诉它从哪里调用?我读到有一种方法可以区分真正的点击和假点击。但我找不到一个不同的2个假链接的问题。'纯'JavaScript是更好的选择。感谢。

1 个答案:

答案 0 :(得分:1)

我认为你的意思

事件对象保存所点击的内容。所以你可以这样处理数据。



function clicked(event) {
    console.log(event.target);
    console.log(event.target.getAttribute("data-item"));
}





document.getElementById("tab").addEventListener("click", clicked);

var tds = document.getElementsByTagName("td");
tds[0].click();
tds[1].click();

<table id="tab">
  <tbody>
    <tr>
      <td data-item="1">1</td>
      <td data-item="2">2</td>
    </tr>
  </tbody>
</table>
&#13;
&#13;
&#13;


你真正想要的是什么

&#13;
&#13;
    function clicked(event) {
      console.log(event.target.getAttribute("data-action"));
      event.target.removeAttribute("data-action");
    }

    document.getElementById("tab").addEventListener("click", clicked);

    var tds = document.getElementsByTagName("td");

    tds[0].setAttribute("data-action", "A");
    tds[0].click();

    tds[0].setAttribute("data-action", "B");
    tds[0].click();
&#13;
<table id="tab">
  <tbody>
    <tr>
      <td>1</td>
    </tr>
  </tbody>
</table>
&#13;
&#13;
&#13;