Jquery单击事件在第一次单击时未触发,其行为类似于双击

时间:2018-04-13 01:35:49

标签: javascript angular

Jquery点击事件在第一次点击时没有触发,其行为就像双击之后。这是我的代码。我会喜欢一些帮助。感谢



faqBodyLoader(id) {
  $("#faqTitle" + id).click(function(e) {
    e.preventDefault();
    $("#faqBody" + id).toggleClass("hide");
    $("div[id^=faqBody]").removeClass("show");
  });
}

<span *ngFor="let data of _table" id="faqList">
  <div class="faq-title d-flex align-items-center" id="faqTitle{{data.faq_id}}"(click)="faqBodyLoader(data.faq_id)">
    {{data.faq_question}}
  </div>
  <div class="faq-body hide" id="faqBody{{data.faq_id}}">
    <span innerHTML="{{data.faq_answer}}"></span>
  </div>
</span>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

在定义下一个事件之前,您已经在id =“faqTitle {{data.faq_id}}”元素上有一个click事件。每次单击该元素时,您都要定义一个新的事件处理程序并运行所有附加的事件处理程序。奇怪的是,如果再次点击它,它将相当于三次点击,然后是四次点击等......

最初由War10ck发布