当前位置:主页 > jquery教程 > jquery插件制作 手风琴Panel效果实现

jquery风琴Panel效果实现代码

发布:2019-11-15 14:22:51 110


给网友朋友们带来一篇相关的编程文章,网友敖星火根据主题投稿了本篇教程内容,涉及到jquery、风琴、Panel效果、jquery插件制作 手风琴Panel效果实现相关内容,已被711网友关注,下面的电子资料对本篇知识点有更加详尽的解释。

jquery插件制作 手风琴Panel效果实现

首先我们还是创建一个html文件,里面包含如下的html结构。
 

<div id="pane-container">
  <div class="pane">
    <h1>first pane</h1>
    <p>this script should allow only one pane to be visible at a time.</p>
  </div>
  <div class="pane">
    <h1>second pane</h1>
    <p>this script should allow only one pane to be visible at a time.</p>
  </div>
  <div class="pane">
    <h1>third pane</h1>
    <p>this script should allow only one pane to be visible at a time.</p>
  </div>
</div>  

然后为页面定义如下css:
 

<style type="text/css">
#pane-container
{
margin: 0;
padding: 0;
width: 200px;
}
.pane h1
{
padding: 5px;
cursor: pointer;
position: relative;
background-color: #4c4c4c;
color: #fff;
font-weight: normal;
font-size: 20px;
margin: 0px;
}
.pane p
{
padding: 10px;
margin: 0;
background-color: #e4e4e4;
}
</style>  

下面我们来介绍jquery.accordtion.js插件的实现。首先我们需要考虑的是如何隐藏pane里面的内容部分,也就是p标签。h1作为标题是不需要隐藏的。
 

(function ($) {
$.fn.accordtion = function () {
return this.each(function () {
$(this).find('p').hide();
});
}
})(jQuery);  

页面调用的代码:
 

$(document).ready(function () {
  $('#pane-container').accordtion();
});

  插件代码很简单,就是找到class为pane的div下面的p,对其隐藏。接下来我们要实现的是,当用户点到h1的时候,对应的p标签的内容显示出来,同时其他h1对应的p标签的内容隐藏。代码如下:
 

//对h1标签设置click事件
self.delegate('h1', 'click', function () {
  //为对应的p标签设置slideToggle效果
  $(this).next('p').slideToggle(600)
      //获取其他pane对象,找到他们下面的p标签,收起
      .parent().siblings().children('p').slideUp(600);
});

现在我们的插件已经很有型了,最后要做的就是添加用户自定义属性options,这次我们只添加一个‘默认显示第几个pane'的属性。
 

//设置第几个元素显示
self.children(':eq(' + options.visibleByDefault + ')')//找到和options.visibleByDefault一致的pane对象
  .children('p')
  .show();

  完整的代码大家还是下demo自己看吧。jQuery.plugin.accordtion

  谢谢大家的支持,希望本篇文章对你有帮助。如果对代码哪里有不清楚的地方,可以联系我。

参考资料

相关文章

  • jQuery 1.9使用$.support替代$.browser的实例内容

    发布:2019-10-04

    jQuery 从 1.9 版开始,移除了 $.browser 和 $.browser.version , 取而代之的是 $.support,下面我们来看下具体的使用方法


  • 如何解决jQuery中 $ 符号的冲突问题

    发布:2020-02-16

    在jQuery中,$是jQuery的别名,为了书写方便,我们更习惯用$('#id')这一类的方式来书写代码。这篇文章给大家分享jQuery中 $ 符号的冲突问题及解决方案,感兴趣的朋友一起看看吧


  • jquery Tab效果和动态加载示例代码

    发布:2020-02-21

    这篇文章主要是对jquery中Tab效果和动态加载的简单实例进行了介绍,需要的朋友可以过来参考下。希望对大家有所帮助


  • jQuery实现图片轮播的实例代码讲解

    发布:2020-01-17

    之前有碰到过jQuery实现列表自动滚动,这次的图片轮播在原理上与之相同,只有一些细微的差别,就是需要在图片的右下角显示当前图片的序号


  • 关于jQuery解析json格式数据实例效果

    发布:2020-03-06

    这篇文章主要介绍了jQuery解析json格式数据,涉及jQuery针对json格式数据元素遍历相关操作技巧,需要的朋友可以参考下


  • jquery实现的Banner广告收缩效果的实例

    发布:2020-05-19

    这篇文章主要介绍了jquery实现的Banner广告收缩效果代码,可实现点击按钮收缩与展开广告图片的功能,非常简单实用,需要的朋友可以参考下


  • 关于jquery map方法使用

    发布:2020-01-13

    jquery的map方法非常好用,其作用是将数组或单个对象,替换为新的内容,在此特向大家分享下


  • 实例详解jQuery切换所有复选框选中状态的方法

    发布:2020-02-01

    这篇文章主要介绍了jQuery切换所有复选框选中状态的方法,可实现批量切换复选框选中状态的功能,需要的朋友可以参考下


网友讨论