複数のdivを切り替え、divの外側のどこかがクリックされたときにも閉じます

user6459745

このjQueryコードを使用して、divを切り替え、divの外側のどこかがクリックされた場合にdivを閉じるようにします。

$(document).ready(function(){
  $('html').click(function(){
  $('div').hide();
});

$('a').click(function(e){
  e.stopPropagation();
});

$('div').click(function(e){
  e.stopPropagation();
});

$('a').click(function(){
  $('div').toggle();
});

})

しかし、私はこの関数を実行するために必要な多くのdivを持っているので、これを行いました:

<a href="javascript:;" class="tgl" id="link-1" alt="div-1">LINK 1</a>
<a href="javascript:;" class="tgl" id="link-2" alt="div-2">LINK 2</a>
<a href="javascript:;" class="tgl" id="link-3" alt="div-3">LINK 3</a>
<div id="div-1"></div>
<div id="div-2"></div>
<div id="div-3"></div>
$(document).ready(function(){
  $('html').click(function(){
  $('#div-1').hide();
  $('#div-2').hide();
  $('#div-3').hide();
});

$('#link-1').click(function(e){
  e.stopPropagation();
});
$('#link-2').click(function(e){
  e.stopPropagation();
});
$('#link-3').click(function(e){
  e.stopPropagation();
});

$('#div-1').click(function(e){
  e.stopPropagation();
});
$('#div-2').click(function(e){
  e.stopPropagation();
});
$('#div-3').click(function(e){
  e.stopPropagation();
});

$('.tgl').click(function(){
  altDiv = $(this).attr('alt');
  $('#'+altDiv).toggle();
});

})

しかし、それは最初のdivに対してのみ機能し、他の2つのdivはまったくトグルしませんここにjsFiddleリンクがあります。私は、各欲しい値。つまり、をオンにしてクリックすると、が非表示になり、表示されます。link togglediv idaltdiv-1link-2div-1div-2

あなたはオーギュスタンと

コードを短くするには、これも使用する必要があります

<a href="javascript:;" class="tgl" id="link-1" alt="div-1">LINK 1</a>
<a href="javascript:;" class="tgl" id="link-2" alt="div-2">LINK 2</a>
<a href="javascript:;" class="tgl" id="link-3" alt="div-3">LINK 3</a>
<div class="divClass" id="div-1"></div>
<div class="divClass" id="div-2"></div>
<div class="divClass" id="div-3"></div>
$(document).ready(function(){
    $('html').click(function(){
        $('#div-1').hide();
        $('#div-2').hide();
        $('#div-3').hide();
    });

    $('.divClass').click(function(e){
        e.stopPropagation();
    });

    $('.tgl').click(function(e){
        altDiv = $(this).attr('alt');
        $('#'+altDiv).toggle();
        e.stopPropagation();
    });

})

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ネストされたdivの外側をクリックしたときに、子divアコーディオンクラスを切り替える方法は?

分類Dev

別のリンクがクリックされたときにオーバーレイを閉じることができるように、オーバーレイを切り替えるにはどうすればよいですか?

分類Dev

一致するリンクがクリックされたときに個々のdivの属性を切り替えます

分類Dev

ユーザーがポップアップの表面の外側のページのどこかをクリックしたときに動的に追加されたポップアップを閉じるにはどうすればよいですか?

分類Dev

メニューを切り替えますが、閉じずに内側をクリックすることもできます

分類Dev

ボタンでdivを切り替え、そのdivの外側をクリックするとdivを非表示にします

分類Dev

クリックしたのと同じIDでdivを切り替えます

分類Dev

内側のdivをクリックすると、外側のdivもオンクリックされます

分類Dev

divアニメーションの非表示/切り替えが正しく機能せず、サイドバーの外側をクリックすると閉じます

分類Dev

別の要素がクリックされたときに要素のクラスを切り替えますReact

分類Dev

ダブルクリックまたは外側をクリックしてdivを閉じる/開くを切り替えます

分類Dev

新しいボタンがクリックされたときに他のすべてのdivを閉じるにはどうすればよいですか?

分類Dev

ボタンがクリックされたときに2つの機能を切り替えます。

分類Dev

それぞれがクリックされたときに同じIDを持つ複数の親divから子divの内容を取得する方法

分類Dev

div領域の外側をクリックするとdivを閉じる

分類Dev

要素Jqueryの外側をクリックしたときにクラスを切り替える方法

分類Dev

スライドをクリックすると、複数の非表示のdivを切り替えます

分類Dev

メニューの外側をクリックしたときに切り替えられたクラスを削除する方法

分類Dev

すべての入力が同じ親divを共有しているときに、クリック時にラジオ入力要素のチェック状態を切り替えるにはどうすればよいですか?

分類Dev

リンクをクリックすると、モーダルが閉じてJavaScriptがアクティブになり、divに保持されている非表示のコンテンツセクションが切り替わります。

分類Dev

指定したDIVの外側をクリックすると、DIVが非表示になります

分類Dev

クリックするとdivを切り替え、外側をクリックすると非表示に切り替えます

分類Dev

いずれかのボタンがクリックされたときにすべてのボタンテキストを切り替えます

分類Dev

divがクリックされたときに切り替える方法

分類Dev

要素がクリックされたら、別のクラスでこの要素に最も近い要素を見つけて切り替えます

分類Dev

ダイアログの外側の領域がクリックされたときにダイアログを閉じる/非表示にする

分類Dev

別の行がクリックされたときにボタンを元に戻す切り替え

分類Dev

次のリストが切り替えられたときに切り替えを閉じる方法

分類Dev

ボタン(UISegmentedControlボタン)のすぐ外側をクリックすると、ボタンがクリックされます。なぜこれが起こっているのか誰かに教えてもらえますか?

Related 関連記事

  1. 1

    ネストされたdivの外側をクリックしたときに、子divアコーディオンクラスを切り替える方法は?

  2. 2

    別のリンクがクリックされたときにオーバーレイを閉じることができるように、オーバーレイを切り替えるにはどうすればよいですか?

  3. 3

    一致するリンクがクリックされたときに個々のdivの属性を切り替えます

  4. 4

    ユーザーがポップアップの表面の外側のページのどこかをクリックしたときに動的に追加されたポップアップを閉じるにはどうすればよいですか?

  5. 5

    メニューを切り替えますが、閉じずに内側をクリックすることもできます

  6. 6

    ボタンでdivを切り替え、そのdivの外側をクリックするとdivを非表示にします

  7. 7

    クリックしたのと同じIDでdivを切り替えます

  8. 8

    内側のdivをクリックすると、外側のdivもオンクリックされます

  9. 9

    divアニメーションの非表示/切り替えが正しく機能せず、サイドバーの外側をクリックすると閉じます

  10. 10

    別の要素がクリックされたときに要素のクラスを切り替えますReact

  11. 11

    ダブルクリックまたは外側をクリックしてdivを閉じる/開くを切り替えます

  12. 12

    新しいボタンがクリックされたときに他のすべてのdivを閉じるにはどうすればよいですか?

  13. 13

    ボタンがクリックされたときに2つの機能を切り替えます。

  14. 14

    それぞれがクリックされたときに同じIDを持つ複数の親divから子divの内容を取得する方法

  15. 15

    div領域の外側をクリックするとdivを閉じる

  16. 16

    要素Jqueryの外側をクリックしたときにクラスを切り替える方法

  17. 17

    スライドをクリックすると、複数の非表示のdivを切り替えます

  18. 18

    メニューの外側をクリックしたときに切り替えられたクラスを削除する方法

  19. 19

    すべての入力が同じ親divを共有しているときに、クリック時にラジオ入力要素のチェック状態を切り替えるにはどうすればよいですか?

  20. 20

    リンクをクリックすると、モーダルが閉じてJavaScriptがアクティブになり、divに保持されている非表示のコンテンツセクションが切り替わります。

  21. 21

    指定したDIVの外側をクリックすると、DIVが非表示になります

  22. 22

    クリックするとdivを切り替え、外側をクリックすると非表示に切り替えます

  23. 23

    いずれかのボタンがクリックされたときにすべてのボタンテキストを切り替えます

  24. 24

    divがクリックされたときに切り替える方法

  25. 25

    要素がクリックされたら、別のクラスでこの要素に最も近い要素を見つけて切り替えます

  26. 26

    ダイアログの外側の領域がクリックされたときにダイアログを閉じる/非表示にする

  27. 27

    別の行がクリックされたときにボタンを元に戻す切り替え

  28. 28

    次のリストが切り替えられたときに切り替えを閉じる方法

  29. 29

    ボタン(UISegmentedControlボタン)のすぐ外側をクリックすると、ボタンがクリックされます。なぜこれが起こっているのか誰かに教えてもらえますか?

ホットタグ

アーカイブ