lavoiesl/jquery-autocollapser

此包已被弃用且不再维护。没有建议的替代包。

一个简单的jQuery插件,用于在切换时折叠一个框

安装: 8

依赖: 0

建议者: 0

安全: 0

星标: 4

关注者: 2

分支: 0

开放问题: 0

语言:JavaScript

类型:jquery-plugin

dev-master 2012-03-07 15:40 UTC

This package is not auto-updated.

Last update: 2022-07-18 08:52:07 UTC


README

作者

Sébastien Lavoie (sebastien@lavoie.sl)

描述

简单解决常见问题

  • 简单绑定选择器的折叠/展开切换
  • 提供API以显示/隐藏/切换
  • 在包装器上添加类collapse-{expanded,collapsed}

可以做很多事情,但这是第一个版本

先决条件

  • jQuery,应与任何版本兼容,但已与1.7版进行测试

基本设置

  <div class="collapse-wrapper">
    <div class="header">
      <a href="#" class="collapse-toggle">Toggle</a>
    </div>
    <div class="collapse-box">
      <ul>
          <li>Test</li>
          <li>Test</li>
          <li>Test</li>
          <li>Test</li>
      </ul>
    </div>
  </div>

初始化

$(function() {
    $('.collapse-wrapper').autoCollapser();
});

选项

{
    box: '.collapse-box',                 // The box that will be collasped
    toggle: '.collapse-toggle',           // The trigger, binding will be added onClick
    collapsedClass: 'collapse-collapsed', // Class to be added to the wrapper when it is collapsed
    expandedClass: 'collapse-expanded',   // Idem
    duration: 800,                        // Speed in ms for the animation,
    stop: true                            // Empty the queue using .stop(true, true)
}

CSS示例

.collapse-wrapper {
    border: 1px solid green;
    padding: 10px;
    margin: 10px;
}

.collapse-expanded .collapse-toggle::after {
    content: " -"
}
.collapse-collapsed .collapse-toggle::after {
    content: " +"
}

.collapse-box {
    border: 1px solid red;
    margin: 10px;
}

API

$('.collapse-wrapper').autoCollapser('show');
$('.collapse-wrapper').autoCollapser('hide');
$('.collapse-wrapper').autoCollapser('toggle');

事件

创建了两个事件,它们都传递一个布尔值data.show

  • autoCollapser.toggle.start
  • autoCollapser.toggle.after
$('.collapse-wrapper').on('autoCollapser.toggle.start', function(event,data){
  console.log("Collapser has started " + (data.show ? 'expanding' : 'collasping'));
});
$('.collapse-wrapper').on('autoCollapser.toggle.after', function(event,data){
  console.log("Collapser was " + (data.show ? 'expanded' : 'collasped'));
});

演示

查看演示