1

thisアンカーの場合にのみオブジェクトを取得するセレクターを作成しようとしています。<a>タグ以外の場合は何も取得しないようにします。

$('.link').mouseover(function(){

    $("a", this).css('color','#00F');

})

うまくいきませんが、クエリ$("a", this).css('color','#00F');だけを残すと効果があります。this例、ブログ、およびドキュメントで見つけることができる他のすべてのセレクターは、子オブジェクトを取得するためのもの ( find() children())、2 つのセレクターを結合するためのもの (とadd())、または探しているもの以外のほとんどすべてのものでした。誰か助けてください。

4

1 に答える 1

5

is()メソッドを使用してかどうかを確認$(this).is('a')し、それに応じて対応することができます。

if ($(this).is('a')) {
    $(this).css('color', '#00F');
}

しかし、おそらくこの状況でのより良い解決策は、filter()メソッドを使用して$(this).filter('a').css('color','#00F');

注意するには、現在のjQuery オブジェクトをfilter()フィルター処理します。そのため、すべての要素から s を除外します。一方 ( と同等) は、提供されたセレクターに一致する jQuery オブジェクト内の要素の子孫を検索します。$('*').filter('a')a$('a', this)$(this).find('a')

于 2012-09-03T21:12:30.767 に答える