使用 iscroll 时触发两次 Onclick 事件

Posted

技术标签:

【中文标题】使用 iscroll 时触发两次 Onclick 事件【英文标题】:Onclick event firing twice while using iscroll 【发布时间】:2014-03-12 08:06:48 【问题描述】:

我使用的是嵌套的 iscroll4,但是 onclick 事件在

发射两次。 首先使用 iscroll 添加了一个仅用于滑动的 div,它的 li 如下:-
     <li>     
           <div class="pullContainer">
            <div class="wraps" id="w1">
              <div class="scrolls" id="sc1">
                <div id="pullDown1" class="pullDowns">
                 <span class="pullDownIcon"></span>
                   <span class="pullDownLabel1">Pull down to refresh...</span>
                 </div>
                 <div class="scrollContainer" id="nearBy"></div>
                   <!-- Template  container -->
                 <script id="myTemplate" type="text/x-jquery-tmpl">
                  if (data.length > 0)
                 <ul class = "forSmooth" id="nearbyList">
                  each data
                  <li class = "smooth" data-businessId = "$$value.id" data-distance = "$$value.distance" data-prev-page ="homePage" onclick = "alert('hi');">

这里的警报触发了两次......那么我如何通过第二次触发来防止这种情况。

【问题讨论】:

jquery 代码在哪里? 我正在使用 API 检索值。 【参考方案1】:

试试这个:

<li class = "smooth" data-businessId = "$$value.id" data-distance = "$$value.distance" data-prev-page ="homePage" onclick = "AlertFunction()";">

function AlertFunction(e)
    alert("Hi");
    e.stopPropagation();

注意:完全未经测试的代码

【讨论】:

试试 e.preventDefault(); 你能放个小提琴吗?还是 JSBin ? 它的代码很长,我正在使用 api 来做。所以我不能。

以上是关于使用 iscroll 时触发两次 Onclick 事件的主要内容,如果未能解决你的问题,请参考以下文章

dojo.dijit.Button 触发 onclick 事件两次

按钮 onclick 函数触发两次

按钮onclick功能触发两次

点击两次激活? javascript onclick问题

为啥我的edittext需要点两次才能触发,Onclick事件

Reactjs/Apollo/AppSync Mutation 触发了两次