ホームページ >ウェブフロントエンド >jsチュートリアル >jQuery ソース コードの解釈 hasClass() メソッド分析_jquery

jQuery ソース コードの解釈 hasClass() メソッド分析_jquery

WBOY
WBOYオリジナル
2016-05-16 16:13:301570ブラウズ

この記事では、jQuery ソース コード解釈の hasClass() メソッドをより詳細に分析します。皆さんの参考に共有してください。具体的な分析は次のとおりです。

コードをコピー コードは次のとおりです。
jQuery.fn.extend({
HasClass: function( セレクター ) {
//className にチェック対象のクラス名セレクターを代入し、l はセレクターで選択されている現在チェック対象の jQuery オブジェクト配列の長さです。
var className = " " セレクター " ",
i = 0、
l = this.length;
//各 DOM 要素のクラス名を確認するループ
for ( ; i //this[i].nodeType === 1、現在の DOM ノードのノード タイプを決定します。1 は要素ノードを表します。
//this[i].className、現在の DOM ノードの既存のクラス名を取得します。
//rclass = /[trnf]/g, replace(rclass, " ") は、現在の DOM ノード クラス名からタブ文字、改行文字、復帰文字などを削除することを意味します。
//indexOf(className)、現在の DOM ノードのクラス名の検索を開始し、確認したいクラス名があるかどうかを確認します。>=0 の場合は、存在することを意味し、true を返し、関数から抜けます。 。
If ( this[i].nodeType === 1 && (" " this[i].className " ").replace(rclass, " ").indexOf( className ) >= 0 ) {
return true;
}
}
//ループチェックが完了した後、各DOM要素にチェックしたいクラス名が存在しないことが判明した場合は、falseを返して関数を抜けます。
//jQuery オブジェクト配列内の DOM 要素のクラス名に、探しているクラス名が含まれている限り、true が返され、関数から抜け出すことがわかります。
return false;
}
});

この記事が皆さんの jQuery プログラミングに役立つことを願っています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。