プログラミングナレッジKnowledgeSide

2017.10.07

jQueryで特定の要素以外をクリックした時に操作させる方法

特定の要素以外をクリックした時に何らかの機能を実行するのは、モーダルやポップアップのウィンドウを閉じたりする時に便利です。jQueryを使うことで簡単に実装できるので備忘録としてのメモです。

 

クリックイベントでクリックされた要素を取得し条件分岐させる

まずはサンプルのコードです。ターゲットとなる特定の要素にはidもしくはclassを振っておきます。javascriptの方はクリックイベントで「e」というイベントオブジェクトでクリックした要素を取得し、その要素がターゲットとなる要素の中に含まれているかをclosestで判別します。

 

【HTML】(一部抜粋)

<div class="wrap">
   <div id="clickTarget">ターゲット要素
   </div>
</div>

 

【javascript】

$(document).on('click',function(e) {
   if(!$(e.target).closest('#clickTarget').length) {
     // ターゲット要素の外側をクリックした時の操作
   } else {
     // ターゲット要素をクリックした時の操作
   }
});

 

いろいろと使いどころは多いので、重宝しそうですね!ユーザビリティ向上に活用してみてはいかがでしょうか。今回のサンプルはこちらに上げておりますのでご参考に!

 

(参考)
jQueryで特定要素以外クリック時のイベントを取得する

  • このエントリーをはてなブックマークに追加
>>記事一覧に戻る