当手风琴打开和关闭时,我有一个手风琴使用+和 - 图像工作。我一直在努力让它只允许一次开放。
(function ($) {
$.fn.accordions = function (options) {
return this.each(function () {
var titleBar = $('.title', this),
content = $('.content', this),
img = $('<span class="arrow" />'),
isClosed = content.hasClass('content');
img.addClass((isClosed) ? 'upArrow' : 'downArrow');
titleBar.append(img).on('click', function () {
var parent = $(this).parents('.accordion'),
arrow = $('.arrow', this),
content = $('.content', parent);
$(this).toggleClass('no-border');
if (arrow.hasClass('upArrow')) {
content.slideDown(500);
arrow.removeClass('upArrow').addClass('downArrow');
} else {
content.slideUp(500);
arrow.addClass('upArrow').removeClass('downArrow');
}
});
});
};
}(jQuery));
<script type="text/javascript">
$(function() {
$('.accordion').accordions()
});
</script>
下面是HTML。
<div class="accordion">
<div class="title">
Title goes here
</div>
<div class="content">
Content here
</div>
</div>
答案 0 :(得分:1)
对于自编的手风琴,实现这一目标的最佳方法是执行以下步骤:
编辑:如果您有可能,请使用带有Accordion Widget的jQuery UI。