OnClick事件被触发两次

时间:2015-12-03 08:29:56

标签: javascript jquery

我有以下遗留代码,只在firefox中被解雇两次,请告诉我需要做什么

<div onclick="$get('imgLookUpIcon').click();" style="width: 25px; height: 56px;">
    <span style="visibility: none;"></span>
    <span></span>
    <img src="./images/lookup.gif" id="imgLookUpIcon" style="vertical-align: middle;" onclick="javascript:ABCDEF(event,this);"/>
</div>

请让我知道我认为的两个解决方案是什么原因

  1. 删除img中的点击
  2. 停止传播。
  3. 此致 Selva Kumar J

1 个答案:

答案 0 :(得分:0)

您必须使用event.stopPropagation()来阻止事件传播到父树。

尝试FIDDLE

由于你还没有提供$ get实现,我编写了一个模拟函数,如下面的

  function $get(idselector) {
    alert('$get');
    return $('#' + idselector);
  }

  function ABCDEF(event, object) {
    alert('ABCDEF');
    event.stopPropagation(); // try commenting this will reproduce your issue
  }

希望它适合你