呼び出す$(page)
と、4 つの要素を含む jQuery オブジェクトを作成します。文字列にネストされていない HTMLElements ごとに。
console.log($(page).map(function () {
return this.nodeName;
}).toArray());
// ["H1", "P", "SPAN", "P"]
この jQuery オブジェクトの最初の要素html()
の を返し
ます。そのため、「Hello!」しか表示されません。innerHTML
を見つけるには、メソッド.username
を使用する必要があります。このfilter()
メソッドは、指定されたセレクターに一致する要素を jQuery オブジェクト内で検索します。
alert($(page).filter('.username').text()); // "this is ur name", kthx.
ここで更新されたフィドルを参照してください。http://jsfiddle.net/6TSuq/15/
将来的には、このような要素をネストする可能性があることに注意してください。
var page = "<h1><span class='username'>Foo</span></h1>";
この状況では、filter()
ing for .username
will は何の結果ももたらしません。jQuery オブジェクトには要素$(page)
が含まれていないため。.username
が含まれてh1
おり、その子孫は.username
です。したがって、ここでは使用する必要があります。
alert($(page).find('.username').text());
参照についてはfind()
、filter()
および を参照してください。map()