所以,如果我有一个像变量
var ht = "<body><p>Paragraph Here</p></body>"
Run Code Online (Sandbox Code Playgroud)
如果它附加到DOM我可以这样做以获取文本
$('p').text();
Run Code Online (Sandbox Code Playgroud)
但是,我可以对尚未附加到dom的变量进行相同的选择吗?
Orb*_*ing 20
jQuery对象将获取HTML并将其转换为DOM结构以进行进一步查询,您可以直接传递它以创建对象,或者如果您只是想查询它,则将其用作上下文.
编辑:出于某种原因,似乎有必要将其包装在DIV中,如果在此示例中尚未包含在DIV中.有关详细信息,请参阅有关此方法的jQuery对象文档.
请参阅系统的测试框架: http ://jsfiddle.net/hUMqU/
var ht = "<body><p>Paragraph Here</p></body>";
$('<div>' + ht + '</div>').find('p').text();
Run Code Online (Sandbox Code Playgroud)
或作为背景:
var ht = "<body><p>Paragraph Here</p></body>";
$('p', '<div>' + ht + '</div>').text();
Run Code Online (Sandbox Code Playgroud)
Jua*_*nus 14
没有神秘感.选择
$('p')
Run Code Online (Sandbox Code Playgroud)
选择p文档的元素,隐含的上下文.
但是p元素在:
var ht = "<body><p>Paragraph Here</p></body>";
Run Code Online (Sandbox Code Playgroud)
未附加到文档(DOM),因此如果未选中它们就可以.
幸运的是,该$()函数有一个第二个参数,即上下文,必须在这里使用,如:
$('p', $(ht).context)
Run Code Online (Sandbox Code Playgroud)