0

所以...我正在尝试缩小一些 JS 代码,我有类似...

$('#element-A'+idx).hide();
$('#element-R'+idx).hide();
$('#element-Z'+idx).hide();

有没有一种可靠的方法可以在不影响性能的情况下将它们分解成一个语句?

我试过了:

$('#element-A'+idx,'#element-R'+idx,'#element-Z'+idx).hide();

...但这只是给了我一个错误,这实际上是我认为会发生的。

我也试过:

$(['#element-A'+idx,'#element-R'+idx,'#element-Z'+idx]).hide();

...但我也从中得到了一个错误。

我能想到的唯一其他可能性是:

$('#element-A'+idx).add('#element-R'+idx).add('#element-Z'+idx).hide();

但这不是创建一个新对象,实际上占用了更多内存吗?

我应该怎么办??还是我最好将它们作为单独的命令保留?

4

2 回答 2

1

您需要传递一个选择器字符串:

$('#element-A'+idx + ', #element-R'+idx + ', #element-Z'+idx).hide();

或者,更好的是,为所有元素添加一个公共类,然后直接使用它。

于 2013-06-17T20:28:56.537 回答
1

您的逗号需要在引号内:

$('#element-A'+idx,'#element-R'+idx,'#element-Z'+idx).hide();

应该

$('#element-A' + idx + ', #element-R' + idx + ', #element-Z' + idx).hide();
于 2013-06-17T20:30:59.297 回答