2017-06-21 8 views
-1

それぞれにリンクがあるdivがあります。リンクをクリックすると、divが非表示になります。すべてのdivが非表示になっているときに別のページにリダイレクトする必要があります。ここでクリックイベント後にすべてのdivが非表示になっていないか確認してください。

私のコードです:

<div class="checkhide"> 
 
    <div> 
 
     <div> 
 
      <a href="#" class="btn" onClick="$(this).parent().parent().parent().hide()" role="button"> 
 
       <span class="glyphicon glyphicon-remove"> 
 
       </span> 
 
      </a> 
 
     </div> 
 
    </div> 
 
</div>

+0

あなたもあなたのjavascriptを投稿してください。 – Guillaume

+0

$(関数(){ \t IF($( "div.checkhide:目に見える"。)長=== 0) アラート( 'すべてが隠されている'); \t \t \t \t })。 – Dilak

+0

$( "checkhide:visible")。beginigの長さ=== 0ので、すべてのdivが表示されている間に警告が表示されます。 – Dilak

答えて

1

あなたは 'すべて' のdiv何を意味するかは明らかではない、このonClick="$(this).parent().parent().parent().hide()"のみONEのdivのために働くようです。
たぶん<a >をクリックしたとき<div>に「隠れた」クラスを追加し、あなたが4 のように、そこにあるどのように多くのdivを知っていればその後で、「すべて」のdivクラスは「隠れた」含まれているかどうかを確認する場合:

$("a").on('click', function(){ 
// here should be some div you want to hide 
    $(".checkhide").addClass("hidden"); 
}) 

var hidden_div_number = $("div").find("[class*='hidden']").length; 
if (hidden_div_number==4){ 
// do something; 
} 
0

私はこの問題を解決しました。それはちょうどタイプミスでした。私は忘れた "。"私のJavaScriptで:

\t 
 
$(function() { if ($(".checkhide:visible").length === 0) alert('all are hidden'); });

はあなたのすべてをありがとう!

関連する問題