たとえば、
divのなかにaタグがあるときだけ、divをマウスオーバーしたときに
背景が変わるようにする、とか
そういうときに使えるのがhas()メソッド
たとえば、divをマウスオーバーできるようにするには、
こんな感じになるよね。
<div class="box">
をマウスオーバーしたときに背景色をddd(グレー)にして、
マウスをはずしたら、fff(白)にする。
これを、has()を使うと、こうなる
has('a')が入ったことによって、
全部の<div class="box">をマウスオーバーできるようにするんじゃなくて、
divの中に aタグがあった場合だけマウスオーバーできるようになる。
これはいろいろなところで大活躍しそう。
ちなみに、検索してたときは、
「jQuery if has」とかで探してた。条件分岐かなと思ってたから、
でもhasだけでいいんだな。
ちなみにjQuery1.4以降のメソッドだそうです
divのなかにaタグがあるときだけ、divをマウスオーバーしたときに
背景が変わるようにする、とか
そういうときに使えるのがhas()メソッド
たとえば、divをマウスオーバーできるようにするには、
こんな感じになるよね。
$('.box').hover(function(){$(this).css({'background-color' : '#ddd'});}, function(){$(this).css({'background-color' : '#fff'});});
<div class="box">
をマウスオーバーしたときに背景色をddd(グレー)にして、
マウスをはずしたら、fff(白)にする。
これを、has()を使うと、こうなる
$('.box').has('a').hover(function(){$(this).css({'background-color' : '#ddd'});}, function(){$(this).css({'background-color' : '#fff'});});
has('a')が入ったことによって、
全部の<div class="box">をマウスオーバーできるようにするんじゃなくて、
divの中に aタグがあった場合だけマウスオーバーできるようになる。
これはいろいろなところで大活躍しそう。
ちなみに、検索してたときは、
「jQuery if has」とかで探してた。条件分岐かなと思ってたから、
でもhasだけでいいんだな。
ちなみにjQuery1.4以降のメソッドだそうです