2012-01-05 69 views
1

显示/隐藏一个div我现在有这个工作的一部分:使用jQuery基于链接的href

$('#marketing_button').click(function() { 
     $('#marketing').fadeIn('slow', function() { 
     // Animation complete 
     }); 
    }); 

如果我点击id为marketing_button一个元素,那么它会显示市场股利。

我正在为一组div和按钮设置一个基本的显示/隐藏。我有5个hrefs和5个div。每个href都有它自己的id,但是我觉得有五种方法可以做到这一点,而不是复制这些代码。

另外我需要隐藏其他divs当一个新的点击。

结构如下:

<a href="marketing" id="marketing_button">MArketing</a> 
<a href="processing" id="processing_button">Processing</a> 
<a href="compliance" id="compliance_button">Compliance</a> 
... 
<div id="services"> 
<div id"marketing"></div> 
<div id"processing"></div> 
<div id"compliance"></div> 
... 
</div> 

因此,这里有具体的问题:我该如何访问HREF这样我就不需要重复码5次,

我怎么关闭可见的div和淡入新的?

+0

可能重复[如何使用jQuery获得链接的href?](http://stackoverflow.com/questions/7818705/how-to-get-the-href-of-a-link-using-jquery) – 2012-01-05 16:15:28

+0

你的HTML被破坏 – 2012-01-05 16:17:37

回答

0

很多可能的解决方案。在不知道所有细节的情况下,我会把一个包装类与一个类。当链接被点击时,它切换其兄弟分区。

6

为了一般地做到这一点,您需要找到所有要应用此功能的锚点的方法。最简单的方法是向他们添加一个通用的类。

<a href="marketing" id="marketing_button" class="abutton">MArketing</a> 
<a href="processing" id="processing_button" class="abutton">Processing</a> 
<a href="compliance" id="compliance_button" class="abutton">Compliance</a> 

现在,您可以访问相关的锚,你可以做以下

$('a.abutton').click(function() { 
    var id = $(this).attr('href'); 
    $(id).fadeIn('slow', function() { 
    // Animation complete 
    }); 
}); 
相关问题