1. ホーム
  2. jquery

[解決済み] 要素の外側でクリックイベントが発生したとき、その要素を隠すにはどうしたらよいですか?

2022-08-27 09:13:56

質問

ページ上の任意の場所をクリックしたときに可視要素を非表示にする方法が正しいかどうかを知りたいです。

$(document).click(function (event) {            
    $('#myDIV:visible').hide();
});

要素の境界内でクリックイベントが発生しても、要素(div、spanなど)が消えないようにする。

どのように解決するのですか?

私が理解している場合、あなたはdiv以外の場所をクリックしたときにdivを隠したい、そしてあなたがdivの上でクリックした場合、それは閉じないようにしたいです。このコードでそれを行うことができます。

$(document).click(function() {
    alert("me");
});
$(".myDiv").click(function(e) {
    e.stopPropagation(); // This is the preferred method.
    return false;        // This should not be used unless you do not want
                         // any click events registering inside the div
});

これはページ全体にクリックをバインドしていますが、当該divをクリックするとクリックイベントがキャンセルされます。