function Sample23(){
var x = Math.floor( Math.random() * 10 );
var li = jQuery('li.Sample23').css('color','');
li.eq(x).css('color','red');
jQuery('span.Sample23').text(x);
}
function Sample28(){
var slc = jQuery('#Sample28').val();
var li = jQuery('.Sample28 li');
var res = li.is('.' + slc) ? slc + 'はある。' : slc + 'は無い!!';
alert( res );
}
function Sample29(){
var slc = jQuery('#Sample29').val();
var li = jQuery('.Sample29 li');
var res = slc + 'は無い!!';
if( li.hasClass(slc) ){
res = slc + 'はある。\n' + li.filter('.' + slc).attr('class');
}
alert( res);
}
実装例
1
2
3
4
5
6
7
8
存在確認:
検索
jQueryでは特定要素の子要素を検索したり、追加検索することができます。
add(CSSセレクタ)
要素群に、CSSセレクタと合致した要素群を追加します。
返り値:jQueryオブジェクト
リスト10. add(CSSセレクタ)
function Sample310(){
var slcA = jQuery('#Sample310a').val();
var slcB = jQuery('#Sample310b').val();
var li = jQuery('.Sample310 li').css('color','').css('font-weight','');
if( slcB == '' ){
// 初めのクラスだけ適用
li.filter('.' + slcA).css('color','red').css('font-weight','bold');
}
else
{
// 初めのクラスと追加のクラスに適用
li.filter('.' + slcA).add('.' + slcB).css('color','blue').css('font-weight','bold');
}
}
実装例
1
2
3
4
5
6
7
8
クラス選択:
追加クラス:
children([CSSセレクタ])
要素群の全子要素を抽出します。
但し、直下の子要素のみです。
孫要素以下は対象外です。
「CSSセレクタ」を指定することで、子要素の中でも指定されたものを抽出することができます。
【反対】parents()
返り値:jQueryオブジェクト
リスト11. children([CSSセレクタ])
function Sample311(){
var li = jQuery('.Sample311').children('li').css('color','red').css('font-weight','bold');
li.children().children(':last').css('color','blue');
}
function Sample312(){
var li = jQuery('.Sample312 li');
var ch = li.children('b').closest('li');
ch.click(function(e){
li.css('background','');
jQuery(e.target).css('background','silver');
});
}
function Sample314(){
var now = new Date();
var time = now.getHours() + ':' + now.getMinutes() + ':' + now.getSeconds();
jQuery('p.Sample314').find('time').text(time);
}
実装例
今の時刻はです。
This time is .
time要素のところが現在時刻になります。
next([CSSセレクタ])
指定した要素の次の兄弟要素を抽出します。
「CSSセレクタ」で絞り込むことができます。
返り値:jQueryオブジェクト
リスト15. next([CSSセレクタ])
function Sample315(){
var x = Math.floor( Math.random() * 10 );
var li = jQuery('li.Sample315').css('color','');
li.eq(x).next().css('color','red');
jQuery('span.Sample315').text(x);
}
実装例
-番目を選択の次は?
0
1
2
3
4
5
6
7
8
9
nextAll([CSSセレクタ])
指定した要素の次以降の兄弟要素を抽出します。
「CSSセレクタ」で絞り込むことができます。
返り値:jQueryオブジェクト
リスト16. nextAll([CSSセレクタ])
function Sample316(){
var x = Math.floor( Math.random() * 10 );
var li = jQuery('li.Sample316').css('color','');
li.eq(x).nextAll().css('color','red');
jQuery('span.Sample316').text(x);
}
実装例
-番目を選択の後は?
0
1
2
3
4
5
6
7
8
9
prev([CSSセレクタ])
指定した要素の直前の兄弟要素を抽出します。
「CSSセレクタ」で絞り込むことができます。
返り値:jQueryオブジェクト
リスト17. prev([CSSセレクタ])
function Sample317(){
var x = Math.floor( Math.random() * 10 );
var li = jQuery('li.Sample317').css('color','');
li.eq(x).prev().css('color','red');
jQuery('span.Sample317').text(x);
}
実装例
-番目を選択の直前は?
0
1
2
3
4
5
6
7
8
9
prevAll([CSSセレクタ])
指定した要素より前の兄弟要素を抽出します。
「CSSセレクタ」で絞り込むことができます。
返り値:jQueryオブジェクト
リスト18. prevAll([CSSセレクタ])
function Sample318(){
var x = Math.floor( Math.random() * 10 );
var li = jQuery('li.Sample318').css('color','');
li.eq(x).prevAll().css('color','red');
jQuery('span.Sample318').text(x);
}
実装例
-番目を選択より前は?
0
1
2
3
4
5
6
7
8
9
siblings([CSSセレクタ])
指定した要素の全兄弟要素を抽出します。
「CSSセレクタ」で絞り込むことができます。
返り値:jQueryオブジェクト
リスト19. siblings([CSSセレクタ])
function Sample319(){
var x = Math.floor( Math.random() * 10 );
var li = jQuery('li.Sample319').css('color','');
li.eq(x).siblings().css('color','red');
jQuery('span.Sample319').text(x);
}
実装例
-番目の他は?
0
1
2
3
4
5
6
7
8
9
parent([CSSセレクタ])
指定した要素の親要素を抽出します。
「CSSセレクタ」で絞り込むことができます。
返り値:jQueryオブジェクト
リスト20. parent([CSSセレクタ])
function Sample320(me){
var arr = jQuery(me).parent().map(function(){
return this.tagName;
}).get();
alert('親要素は' + arr.join('<'));
}
実装例
parents([CSSセレクタ])
指定した要素の全先祖要素を抽出します。
「CSSセレクタ」で絞り込むことができます。
返り値:jQueryオブジェクト
リスト21. parents([CSSセレクタ])
function Sample321(me){
var arr = jQuery(me).parents().map(function(){
return this.tagName;
}).get();
alert('先祖要素は' + arr.join('<'));
}
実装例
連鎖
jQueryでは入れ子の状態を連鎖して抽出することができます。
andSelf([CSSセレクタ])
現在の要素に加えて、ひとつ前の状態の要素集合を選択抽出します。
返り値:jQueryオブジェクト
リスト22. andSelf([CSSセレクタ])
function Sample422(){
var x = Math.floor( Math.random() * 10 );
var li = jQuery('.Sample422 li').css('color','').css('border','');
li.eq(x).css('color','red');
li.andSelf().css('border','2px solid red');
jQuery('span.Sample422').text(x);
}
実装例
-番目は?
1
2
3
4
5
6
7
8
end([CSSセレクタ])
ひとつ前の状態の要素集合を選択抽出します。
返り値:jQueryオブジェクト
リスト23. end([CSSセレクタ])
function Sample423(){
var x = Math.floor( Math.random() * 10 );
var li = jQuery('.Sample423 li').css('color','').css('border','');
li.eq(x).css('color','red');
li.end().css('border','2px solid red');
jQuery('span.Sample423').text(x);
}