0

如问题所述,想知道是否可以从变量构造 jQuery 对象。像这样的例子:

var data = "<div id='bird'>halo world</div>";
console.log($("#bird",$(data)));​

提供的JSfiddle 链接。

4

1 回答 1

0

$(data)将由 构造"<div id='bird'>halo world</div>",但您使用错误的选择器来选择"#bird"元素。$("#bird",$(data))在元素的后代中搜索。但是$(data)由于您的"#bird"元素不是该对象的后代,因此您会得到一个空对象。如果需要选择"#bird"元素,可以这样使用.closest()

$(data).closest("#bird")

例子:

var data = "<div id='bird'>halo world</div>"+
           "<div id='otherbird'>Other halo world</div>";
console.log( $(data).closest("#bird").html() );
//=>    halo world
于 2012-07-27T11:46:26.760 回答