jQuery函数切换我使用php循环的div

时间:2012-11-23 07:37:54

标签: jquery toggle

我在我的网站上切换了几个使用PHP循环的div,现在问题是传递div id,但如果我循环10条文章,这将产生10个脚本,任何更好的方式传递id并打开相关的div ?

http://jsfiddle.net/NbGSB/

<script>
$('#toggle4').click(function() {
$('.toggle4').slideToggle('fast');
    return false;
});
</script>
<a href="#" id="toggle4">Slide Toggle</a><br /><br />
<div class="toggle4" style="display:none; background-color:#4CF;width:100px;height:200px;"></div>

现在如果我有多个div呢?我是否需要始终传递id并循环脚本或者有更好的方法吗?抱歉,但jQuery不好用

2 个答案:

答案 0 :(得分:1)

是的,只需给你的文章一个类,比如“arcticle-toggle”,然后在两个br-tags之后滑动div: HTML:

<a href="#" class="article-toggle">Slide Toggle 1</a><br /><br />
<div style="display:none; background-color:#4CF;width:100px;height:200px;"></div>

<a href="#" class="article-toggle">Slide Toggle 2</a><br /><br />
<div style="display:none; background-color:#8CF;width:100px;height:200px;"></div>

JS:

<script>
 $('.article-toggle').click(function() {
  $(this).next().next().next().slideToggle('fast');
 return false;
}
</script>

Fiddle

答案 1 :(得分:1)

有很多方法可以做到。

在不改变你的html的情况下你可以把它放在所有的切换和div之后 - 就在</body>标签通常是一个好地方之前

<script type="text/javascript">
$('[id^="toggle"]').click(function() {
    $(this).next('[class^="toggle"]').slideToggle('fast');
    return false;
});
</script>

$('[id^="toggle"]')$('[class^="toggle"]')分别选择ID和类以“toggle”开头的所有元素。