jQueryノード操作
5512 ワード
ノードの選択
first()
現在の結果セットを取得する最初のオブジェクトはeq(0)に相当する
last()
現在の結果セットの最後のオブジェクトを取得
slice()
children()
一致するエレメントセット内の各エレメントのサブエレメントを取得
find()
セレクタに一致する子孫要素の検索
上の2つの方法で選択した要素は同じで、できるだけfindを使うべきです.
ノードの選択(親ノード)
parent()
一致するエレメントセット内の各エレメントの親エレメントを取得
closest()
要素自体から、DOMツリー上で上位要素に段階的に一致し、最初に一致した祖先要素を返します.パラメータを受信する必要があります
例:クリックして指定ノードを検索
spanをクリックして対応するli背景を赤くします
ノードの操作
ノードの作成
first()
現在の結果セットを取得する最初のオブジェクトはeq(0)に相当する
last()
現在の結果セットの最後のオブジェクトを取得
slice()
children()
一致するエレメントセット内の各エレメントのサブエレメントを取得
$('ul.level-2').children()
$('ul.level-2').children('.selected');//
find()
セレクタに一致する子孫要素の検索
$('ul').find('li.current');
$('ul li.current');
$('ul').find('li.current');// ,
上の2つの方法で選択した要素は同じで、できるだけfindを使うべきです.
ノードの選択(親ノード)
parent()
一致するエレメントセット内の各エレメントの親エレメントを取得
$('li.item-a').parent()
closest()
要素自体から、DOMツリー上で上位要素に段階的に一致し、最初に一致した祖先要素を返します.パラメータを受信する必要があります
cccc
bbbb
aaaa
$('#div1').closest('div').css('background', 'red');//
$('#div1').closest('.box').css('background', 'red');//
例:クリックして指定ノードを検索
spanをクリックして対応するli背景を赤くします
-
001
-
002
-
003
-
004
-
005
$('span').click(function(){
$(this).closest('li').css('background','red');
})
ノードの操作
ノードの作成
//
var oDiv = document.createElement('div');
//jq
var $div = $('')
: ,
JS
//
var oDiv = document.createElement('div');
oDiv.innerHTML = 'hello';
oDiv.id = 'div1';
//jq
var $div = $('hello')
サブノードの
append()
の にパラメータの を します.
そのパラメータは、DOM 、DOM 、HTML 、またはjQueryオブジェクトであり、 マッチング の に することができます.Greetings
Hello
Goodbye
box
var oH2 = document.getElementsByTagName('h2')[0];
$('.inner').append(oH2);//DOM
$('.inner').append('<p>Test</p>');//HTML
$('.inner').append($('.box'));//jquery
prepend()
する の ( の )にパラメータの を します.
パラメータDOM 、 、HTML 、またはjQueryオブジェクトは、 する の に されます.
ノードの
before()
after()
ノードの remove() ノード clone()クローンノード デフォルト クローンイベント イベントclone(true) をクローンする
JQのインデックス
index()
1つ の い 、 のランキング
001
002
003
alert( $('#div1').index() ) ;//1
2つ の い 、フィルタリング のランキング001
002
003
//
$('#span1').index();//0
//#span1 span
$('#span1').index('span');//1
:タブ
111
222
333
$('#div1').find('div').eq( $(this).index('input') ).css('display','block').siblings('div').css('display','none');
JQでの
りは り
JQではcss clickのようなループを する がたくさんあることを っています.
ループ をカスタマイズする がある もあります
.each()
コールバック の2つのパラメータ のパラメータは、 き を すの2 のパラメータは、 domオブジェクト を す.$('span').each(funciton(i, elem){
alert(i);
elem.style.background = 'red';
})
eachでthisは
this === elem $('span').each(funciton(i, elem){
$(this).html(i);
})
ループを
forサイクルではbreakでサイクル を することを っています
はい.each()ではreturn falseでループ を します$('span').each(funciton(i, elem){
$(this).html(i);
if(i==0){
return false;
}
})
JQ JS get() とeqの い なぜ するのか、 えば: コンテンツの さ の
get()
domオブジェクトの $('div').get(0).innerHTML = 'sdfsdf';
eqとの い
getメソッドは domオブジェクト,eqはjqueryオブジェクトを た.$('div').get(0).innerHTML = 'sdfsdf';
$('div').eq(0).html('sdfsdf');
どうして るの
コンテンツの さの
textareaの の の さを したい
$('textarea').height();//100
//height()
// jquery
$('textarea').get(0).scrollHeight;//360
の var oDiv = document.getElementById('div1');
$('#div1').get(0) === oDiv; //true;