3
<td class="box">
<span>
<img src='http://something.com' />
</span>
</td>

您将如何选择跨度标签?我需要用 jQuery 添加一个额外的图像(用于用户脚本),但是选择跨度然后添加一个元素比我想象的要难。

4

6 回答 6

10

这些中的任何一个都应该工作

$('span', '.box');
$('.box span');
$('.box > span');
$('.box').find('span');
$('.box').children('span');
$('.box').children('span').first();

ETC。 ....

甚至

$('img[src$="something.com"]').before('<img src="newimage.jpg" />');
$('span:has(img)');
$('span').filter(function() { return $(this).find('img[src$="something.com"]').length })
于 2013-06-21T19:33:51.910 回答
2
$('.box').find('span');

会成功的!

于 2013-06-21T19:34:34.963 回答
2
$('img[src="http://something.com"]').closest('span');

如果您只想针对包含特定span图像的特定srcthen ,您可以使用上面的选择器。

但是,如果您想将所有td.box带有跨度的对象作为它们的后代,那么@adeneo的建议应该有效。

于 2013-06-21T19:33:27.300 回答
1

您可以使用 jquery 查找方法http://api.jquery.com/find/

于 2013-06-21T19:34:17.523 回答
1

仅使用您显示的代码段,我可能会使用以下内容:

$('td.box span')

如果 td.box 有其他父母,您可以使用它们来获得更具体的信息。

于 2013-06-21T19:35:38.080 回答
1

$('.box span') 会让你选择跨度

于 2013-06-21T19:33:50.620 回答