2016-03-30 1 views
0

を切り替えます。このウィジェットでは、slideToggleを使用して詳細を表示したいと考えています。ときにはコードが完全に機能することもありますが、それ以外の場合はダブルトグルしてすぐに詳細を閉じることがあります。のvtiger - jqueryのslideToggleは、ランダムに私が口座モジュールの概要ビューでウィジェットを作った二回

JS:

$(document).ready(function() { 
     $('.potential_single_title').on('click',function(e) { 
      $(this).parent().find('.potential_comment_list').slideToggle('slow'); 
     }); 
    }); 

TPL:スライドトグルの

<script src="resources/ChildCommentScript.js"></script> 
<link rel="stylesheet" type="text/css" href="resources/ChildCommentStyle.css"> 

{strip} 
    <div class="potential_comment_container"> 
    {foreach from=$OPP key=K item=POT} 
     <br /> 
     <div class="potential_single"> 
      <div class="potential_single_title"> 
       <strong>{$POT[1]}</strong> <span class="potential_assignee">Assigned to : {$POT[2]}</span> 
      </div> 
      <hr> 
      <div class="potential_comment_list"> 
       <div class="commentContainer"> 
       {foreach from=$COM[$K] item=POTCOM} 
        <div class="commentDetails" style="width:100%;"> 
         <div class="span1"> 
          <img class="alignMiddle pull-left" src="layouts/vlayout/skins/images/DefaultUserIcon.png"> 
         </div> 
         <span class="commentorName"><strong> {$POTCOM[0]}</strong></span> 
         <span class="pull-right"><p class="muted"><small>{$POTCOM[1]}</small></p></span> 
         <div class="commentInfoContent">{$POTCOM[2]}</div> 
        </div> 
       {/foreach} 
       </div> 
      </div> 
     </div> 
    {/foreach} 
    </div> 
{/strip} 

答えて

2

使い方は正しいように思えます。私はクリックが2回起こっていると思って、スライドを再び引き起こしています。 スライドアクションが発生している場合にJSを修正してクリックを拒否すると、問題が解決する場合があります。

$(document).ready(function() { 
    var sliding = false; 
    $('.potential_single_title').on('click',function(e) { 
     if(sliding) return false; 
     sliding = true; 
     $(this).parent().find('.potential_comment_list').slideToggle('slow', function() {sliding = false;}); 
    }); 
}); 

スライド中にクリックアクションを拒否する簡単なフラグが含まれています!

+0

のthnxが、残念ながらdivがまだ二重倍でトグルます。私は数回を更新した場合、それが再び正常に動作します。それはのvtiger自身のJSファイルと競合可能性があるか、ページがで作られているので、多分それが起こります.tplファイルを使用してPHPと、このいくつかの方法をロードし、それを2回 –

+0

ええjsが、私はあなたがonclickのはtwice..ieが二回クリックされたか、それがある場合、確かに問題発射されたかどうかを確認するには、いくつかのデバッグを置く提案することができる、OKらしいですjsと – Seabizkit

+0

待っているそれはあなたが1つ以上の "ポテのためのprotentalを持っていることではない任意の時点でページのntial_single_title」要素...これは、その** – Seabizkit

0

これは、クリックするだけで二回起こっているかどうかを確認する方法を示すことです。ワンクリックのための

$(document).ready(function() { 
      $('.potential_single_title').on('click',function(e) { 
       console.log("clicked") 
      }); 
     }); 

..コンソールでクリックした二回、あなたのトリガーをとることができる幸せな;-)

もそこにデバッガを入れてみてください...

$(document).ready(function() { 
       $('.potential_single_title').on('click',function(e) { 
        console.log("clicked"); 
debugger; 
       }); 
      }); 
物事を強調することが見れば

クロムでデバッガのコンソールを開いて、デバッガの行にヒットする必要があります。

ただ愚かなものを除外したい。これはページ上にあるものではありません他のjs ...あなたのラッピングのように$(document).ready(2回か何かとそのコードを含む答えるための質問?

+0

私はワンクリックで2回クリックされるので、私は明らかに喜びます。あなたが質問すると、これはこのファイルのJSのすべてです。ページ上で使用されるよりJSがありますが、標準のvtiger JSファイル –

+0

あなたはので、私はそれだけで何が起こるかと今@lohithの答えの作品を見るために除去準備書類について教えてくれましたがthatsのです。仲間を助けるためのthnx。 –

関連する問題