呼び出す$(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 .usernamewill は何の結果ももたらしません。jQuery オブジェクトには要素$(page)が含まれていないため。.usernameが含まれてh1おり、その子孫は.usernameです。したがって、ここでは使用する必要があります。
alert($(page).find('.username').text());
参照についてはfind()、filter()および を参照してください。map()