0

有人能告诉我 jQuery 相当于什么吗?

var shapes=document.getElementsByTagName("shapes")[0];
thisCircle=shapes.getElementsByTagName("circle")[index];
4

5 回答 5

4

有几种方法可以做到这一点。我是这样写的:

$('shapes').first().find('circle').eq(index)
于 2013-05-08T20:28:50.863 回答
3

您可以直接在 CSS 选择器中使用标签并使用修饰符,例如:first让 CSS 选择器引擎为您完成大部分工作并创建最少的中间 jQuery 对象。

.eq(index)index从找到的所有项目中选择项目并返回一个 jQuery 对象。使用数组语法直接索引它[index]会返回一个 DOM 对象(不是 jQuery 对象):

$("shapes:first circle").eq(index)

对这里发生的事情的逐步描述是这样的:

  1. 找到第一个形状对象。
  2. 查找作为第一个形状对象的后代的所有圆形对象,并构造一个包含所有这些圆形对象的 jQuery 对象。
  3. 调用eq()jQuery 对象上的方法来创建一个新的 jQuery 对象,该对象只包含index圆形对象(例如,只有第 3 个)。
于 2013-05-08T20:29:15.630 回答
1
$("shapes:eq(0) circle").eq(index);
于 2013-05-08T20:29:16.007 回答
1

$('shapes').eq(0).find('circle').eq(index)

于 2013-05-08T20:30:01.787 回答
-1
I think this should work:

$('[name="shapes"]').first().find('circle').eq(index);
于 2013-05-08T20:32:26.690 回答