2012-03-21 75 views
1

我想获得一个jQuery手风琴改变角落取决于它是否是活动的,并且它是顶部,底部,还是夹在顶部和底部标题之间。JQuery手风琴风格改变时打开

我希望包含手风琴的盒子在上下无论如何都是圆形的。默认情况下,手风琴主题在已关闭的标题上也有圆角。

是否有可以决定以手风琴的是,当非活动状态,所述顶部和底部之间,具有90度角,而底部将有圆角而失活的风格的方法,和90度的角,当活性?或者,这是一个更复杂的练习,用JavaScript来定制?

+0

首先,我假设你指的是他们提供的东西[这里](http://jqueryui.com/demos/accordion/)?其次,你可以提供更多的例子,并不完全是圆的而不是圆的,在探索中迷路了 – SpYk3HH 2012-03-21 17:17:40

+0

你应该看到jquery UI http://jqueryui.com/demos/accordion/为此你将得到帮助。或者显示你的代码,以便我们可以看到你想要的。 – w3uiguru 2012-03-21 17:18:58

+0

另外,如果你使用jQueryUI的手风琴,你可以在其选项中使用'change' func来根据需要调整角落(又名添加和删除角落类) – SpYk3HH 2012-03-21 17:18:59

回答

2

如何使用.addClass和.removeClass更改基于某些事件的手风琴标题div元素的CSS?点击时活动会被指定?当它再次点击以隐藏它时会失效?

您可以检查.parent()或.sibling()元素,以确定它是否在其他手风琴头div元素的下面/旁边/下面?

+0

对,我认为这是要走的路。我会实施,如果它运作良好,我会检查答案。谢谢! – Smittles 2012-03-21 18:13:23

0

如果你正在寻找一个只CSS的解决方案,也许这样的事情会做你想要什么:

.accordion { 
    border-radius: 10px; 
} 
.accordion [aria-expanded=false] { 
    border-radius: 10px; 
} 
.accordion [aria-expanded=true] { 
    border-radius: 0; 
} 
.accordion > [aria-expanded=false] + :last-child { 
    border-radius: 10px; 
} 
.accordion > [aria-expanded=true] + :last-child { 
    border-radius: 0; 
} 

在地方.accordion,你应该把什么选择将匹配你的手风琴。请记住,这不适用于IE8及更早版本,但它应该适用于大多数其他浏览器。我实际上没有尝试过,所以我不完全确定它是否可以工作。

+0

我还没有看到在CSS中使用小于或加号符号。我将不得不阅读新的方法。 – Smittles 2012-03-21 18:12:48