Jquery 如何选择第二个子元素(div),而不仅仅是它的内容?
有没有一种方法可以使用jquery(或javascript)获取html: 但它总是给我同样的结果:Jquery 如何选择第二个子元素(div),而不仅仅是它的内容?,jquery,html,Jquery,Html,有没有一种方法可以使用jquery(或javascript)获取html: 但它总是给我同样的结果: <span>text2.1</span> <span>text2.2</span> text2.1 text2.2 没有整经师 我在下面的示例中介绍了代码: 请帮忙 您正在查找本机outerHTML属性,但并非所有浏览器都支持它。这是一个跨浏览器的解决方案 示例: var selected=$('div.container>.elem2.el
<span>text2.1</span> <span>text2.2</span>
text2.1 text2.2
没有整经师
我在下面的示例中介绍了代码:
请帮忙 您正在查找本机
outerHTML
属性,但并非所有浏览器都支持它。这是一个跨浏览器的解决方案
示例:
var selected=$('div.container>.elem2.elem');
selected=selected[0]。outerHTML | |$('').append(selected.clone()).html();
$(“#结果”).text(选中);
您正在查找本机outerHTML
属性,但并非所有浏览器都支持它。这是一个跨浏览器的解决方案
示例:
var selected=$('div.container>.elem2.elem');
selected=selected[0]。outerHTML | |$('').append(selected.clone()).html();
$(“#结果”).text(选中);
您已经选择了第二个孩子。包装文本(和)不是html元素的一部分。
例如:
$('div.container>:第n个子项(2)')。attr('class')将返回您已选择的第2个子项的elem2 elem。包装文本(和)不是html元素的一部分。 例如: $('div.container>:第n个子(2)').attr('class')将返回elem2 elem我认为.eq(1)函数是基于零的索引 请尝试以下方法:
alert($('div.container').children().eq(0).html());
alert($('div.container > :nth-child(1)')).html());
alert($($('div.container').children()[0]).html());
alert($('div.elem2').html());
我认为.eq(1)函数是基于零的索引
请尝试以下方法:
alert($('div.container').children().eq(0).html());
alert($('div.container > :nth-child(1)')).html());
alert($($('div.container').children()[0]).html());
alert($('div.elem2').html());
您将在几秒钟内获得..wait.you将在几秒钟内获得..wait.var selected=$('div.container>:nth child(2);-动态选择第n个子项。我只是不知道所选[0]的用途。@Seeker-它首先尝试使用本机
outerHTML
属性,因为这要快得多。当您将[0]
放在jQuery对象之后时,您将从中拉出第一个DOM元素。通过这种方式,您可以访问其本机outerHTML
。如果浏览器不支持该属性,它将返回undefined
,代码将尝试jQuery解决方案。aha!这就是为什么这部分代码不起作用(使用firefox 3.6.12)。但其余的都很好用。再次重申:D@Seeker-是的,如果您试图在Firefox中单独使用outerHTML
(没有后半部分),它将失败,因为.var selected=$('div.container>:n子项(2);-动态选择第n个子项。我只是不知道所选[0]的用途。@Seeker-它首先尝试使用本机outerHTML
属性,因为这要快得多。当您将[0]
放在jQuery对象之后时,您将从中拉出第一个DOM元素。通过这种方式,您可以访问其本机outerHTML
。如果浏览器不支持该属性,它将返回undefined
,代码将尝试jQuery解决方案。aha!这就是为什么这部分代码不起作用(使用firefox 3.6.12)。但其余的都很好用。再次重申:D@Seeker-是的,如果您试图在Firefox中单独使用outerHTML
(没有后半部分),它将失败,因为我试图获得第二个div(elem2)。你建议的是第一组(elem1)。我想得到第二组(elem2)。你建议的是第一部分(elem1).Ty的信息。我没有意识到这一点。请尝试使用$('div.container>:第n个子项(2)');嗯,我已经试过了,它实际上把代码放进了。这并不完全是我想要的,但是知道其他操作代码的方法是很好的。t在这里:$('div.container>:第n个子项(2)').clone().appendTo('#target');我需要你的信息。我没有意识到这一点。请尝试使用$('div.container>:第n个子项(2)');嗯,我已经试过了,它实际上把代码放进了。这并不完全是我想要的,但是知道其他操作代码的方法是很好的。t在这里:$('div.container>:第n个子项(2)').clone().appendTo('#target');
<span>text2.1</span> <span>text2.2</span>
var selected = $('div.container > .elem2.elem');
selected = selected[0].outerHTML || $('<div>').append(selected.clone()).html();
$('#result').text(selected);
alert($('div.container').children().eq(0).html());
alert($('div.container > :nth-child(1)')).html());
alert($($('div.container').children()[0]).html());
alert($('div.elem2').html());