【发布时间】:2012-02-13 06:11:36
【问题描述】:
基本上我试图让一个链接滑下一个 div。这相当简单,但是我需要多个链接滑下各自的 div。我知道我可以只命名链接和 div 的唯一类并以这种方式解决问题,但这自然也需要为每个链接 div 复制 jQuery 代码,我有很多。因此,我需要一个通用脚本。我的情况的简化版本如下:
HTML:
<div>
<a id=link1>toggle text 1</a>
<div class=link1>TEXT 1</div>
<a id=link2>toggle text 2</a>
<div class=link2>TEXT 2</div>
</div>
我为此尝试了一个 jQuery 通用脚本:
$(document).ready(function() {
$('[id^=link]').bind('click', function() {
var $div = $(this).attr('id');
if($('[class=' + div + ']').is(':visible')) {
$('[class=' + div + ']').slideUp();
} else {
$('[class=' + div + ']').slideDown();
}
return false;
});
});
但正如我所期望的那样,因为我在这里写它不起作用。我想这与 ^= 有关,但我不知道如何改进它。
【问题讨论】:
-
if($('[class=' + div + ']').is(':visible')) {应该是if($('[class=' + $div + ']').is(':visible')) {,你忘记了变量名中的$ -
您的
div变量在使用时不应该是$div吗?
标签: jquery class click slidedown