一个轻量级、灵活、多用途的jQuery内容显示(show/hide/toggle)插件,允许您轻松管理任何HTML元素的显示可见性。
可用于剧透、选项卡、工具提示、弹出窗口、下拉菜单、超级菜单等。
1.在jquery之后加载jquery.autohide.js脚本即可开始。
- <script src="/path/to/cdn/jquery.min.js"></script>
- <script src="/path/to/js/jquery.autohide.js"></script>
2.启用触发器元素来切换弹出窗口。
- <span id="example">
- Click Me
- <div class="popover-content" id="popover">
- <p>Your Content Here</p>
- </div>
- </span>
- /* example CSS */
- .popover-content {
- display: none;
- position: absolute;
- width: 300px;
- padding: 1em;
- background-color: #fff;
- border: 1px solid #666;
- z-index: 9;
- }
- $('#example').autohide_timeout({
- $target: $('#popover-content')
- });
3.使用插件从嵌套列表中创建下拉菜单。
- <ul id="example">
- <li class="has-children">
- <a href="#">Menu 1</a>
- <ul class="is-children">
- <li><a href="#">Menu 1.1</a></li>
- <li><a href="#">Menu 1.2</a></li>
- <li><a href="#">Menu 1.3</a></li>
- </ul>
- </li>
- <li class="has-children">
- <a href="#">Menu 2</a>
- <ul class="is-children">
- <li><a href="#">Menu 2.1</a></li>
- <li><a href="#">Menu 2.2</a></li>
- <li><a href="#">Menu 2.3</a></li>
- </ul>
- </li>
- <li>
- <a href="#">Menu 3</a>
- </li>
- </ul>
- /* example CSS */
- ul#example {
- padding: 0;
- }
- ul#example > li {
- position: relative;
- float: left;
- margin-right: 20px;
- }
- ul#example > li > ul {
- display: none;
- width: 160px;
- position: absolute;
- padding: 20px;
- background-color: pink;
- z-index: 3;
- }
- ul#example > li > ul.submenu-opened {
- display: block;
- }
- var $dropMenu = $('#example');
- $dropMenu.autohide_timeout({
- $source: function( $el ) {
- return $el.find('> li > a');
- },
- $target: function( $source ) {
- return $source.next('ul.is-children');
- },
- onEvents: function( $source, $target, event ) {
- $dropMenu.find('.submenu-opened').removeClass('submenu-opened');
- $target.addClass('submenu-opened');
- },
- onTimeout: function( $source, $target, event ) {
- $dropMenu.find('.submenu-opened').removeClass('submenu-opened');
- }
- });
4.自定义触发事件。默认值:“点击”。
- $('#example').autohide_timeout({
- events: 'click mouseenter',
- });
5.设置隐藏元素之前的等待时间。默认值:1500。
- $('#example').autohide_timeout({
- timeout: 2000,
- });