2009-07-10 5 views
3

特定のオブジェクト以外のすべてのクリックを確認するにはどうすればよいですか?
私は(not)を使っていますが、ページ全体のclass/idの呼び出し方法がわかりません。特定のオブジェクト以外のすべてのJQueryクリックハンドラ

$(".page").not("#divInfoBox").click(function (event) { 

} 

私は何のようなもの持っているように、pageを指定するには、HTMLコード内の正しい方法です:私が見る何

<html> 
<body> 
    <div class="page"> 
    </div> 
</body> 
</html> 

はこれです:ページの作品の上半分をクリックします。ページの下部に背景色だけがある場合、「ページ外」であるためクリックが登録されません - どのようにしてクリックがどこでも機能するように拡張するにはどうすればよいですか?

おかげで、 マイケル

+0

は、単一の質問にご質問を制限してください。 –

答えて

1

"html"要素にクリックイベントを追加できます。あなたがイベントを取得その方法は、あなたが「オフ」ページの方にも:

$("html").click(function() { ... }); 

デモはここで見ることができます:http://jsbin.com/eguti

10

はこれを試してみてください:

$("body:not('#divInfoBox')").click(function (event) { 

}); 

notセレクタのdocページ読む:あなたが欠落している

http://docs.jquery.com/Selectors/not

+0

この問題は次のとおりです。 「ページの下部」はすでにボディータグの外にあります(私はあなたにクリックを付けることができないとわかりませんでした) 私のために働いた答えはactivaによって書かれたものです。 ありがとうございます! – Dirk

+0

@Michael - ああ、私の答えでは 'body'は 'html'に変更できるので、ここではnotセレクタのために残しておきます。 – karim79

-1

を)。最後に、このようにする必要があります:あなたはbodyタグ上で動作するように機能を登録する必要がありますので、ご質問については

$(".page").not("#divInfoBox").click(function (event) { 
    // do something 
}); 

、「ページ」のdivはページの一番下まで延びていません。

また、特定のものがクリックされたときにポップアップが表示され、横にクリックすると消えてしまうようです。私はあなたのためにこれを処理するプラグインを探してお勧めします。私はいくつかあることを知っています。個人的にはjqModalが好きです。

関連する問題