0

我有 div 的 id 像这样:manufacturer_12、manufacturer_37、manufacturer_71 等...

有没有办法找到所有可见性可见的 div ,并对它们执行以下操作:

$('[id^="manufacturer"]').slideToggle("slow");

问题是它不可能创建一个 for 循环,因为它们的 id 不是连续的。

也许我应该使用http://api.jquery.com/jQuery.each/

4

3 回答 3

2

您可以使用.each,但这可能有效:

$("[id^='manufacturer']:visible").slideToggle("slow");
于 2013-01-04T18:32:07.557 回答
2

确实,您可以使用:visible.

$('[id^="manufacturer"]').filter(":visible").slideToggle("slow");

但请注意,.slideToggle()如文档所述,这将适用于所有匹配的元素。所以,你实际上不需要在.each()这里使用。

.slideToggle( [duration] [, callback] )

返回:jQuery

描述:通过滑动显示或隐藏匹配的元素。

id在这种情况下,所有以 .开头的可见元素manufacturer

于 2013-01-04T18:32:14.177 回答
1

相信我,这不是做事的好方法。
您最好为所有感兴趣的项目分配一个特定的类,并仅基于类名编写一个非常简单的选择器。这将工作得更快。

于 2013-01-04T18:36:19.133 回答