- ベストアンサー
click範囲の指定
jQuery1.52を使用しています。 <div id="1">1111<div id="2">111</div></div> /*CSS*/ #1{padding:50px;} 例としてこういうhtmlがあった場合で、 $("#1").click(function(){ $("#2").css("display","none"); }); #1をクリックした場合、ただし#2と重ならない範囲で、 (#1の文字やパディング範囲では効果ありとして、#2の範囲では効果を除外したい) という指定を行いたいのですが、記述方法が検討がつきません。 これはどのようにしたらよいのでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
内容としては #1 の方と同じですが、やや効率化してます。 jQuery は event オブジェクトを書き換えてくれるので event.srcElement の処理を考えなくてすみます。 jQuery("#sample1").click(function (event) { if (event.target.id !== 'sample2') { jQuery("#sample2").css("display","none"); } });
その他の回答 (1)
- fujillin
- ベストアンサー率61% (1594/2576)
回答No.1
クリックされたのが#2だったら、処理しないというふうにすればよさそう。 (idは数字から始まるのは書式にあってないので、以下の例ではd1、d2に変えています) $("#d1").click(function(evt){ var t = evt.target || src.Element; if(t.id != "d2") $("#d2").css("display","none"); });
質問者
お礼
遅くなってすいません! ありがとうございました。
お礼
遅くなってすいません! ありがとうございました。