Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何选择第二个子元素(div),而不仅仅是它的内容?_Jquery_Html - Fatal编程技术网

Jquery 如何选择第二个子元素(div),而不仅仅是它的内容?

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

有没有一种方法可以使用jquery(或javascript)获取html:

但它总是给我同样的结果:

<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());