博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jquery插件制作 -- 6.手风琴Panel
阅读量:5951 次
发布时间:2019-06-19

本文共 1390 字,大约阅读时间需要 4 分钟。

  我们今天要做的是手风琴panel,jquery.ui里面有个叫做accordtion的插件,我们要实现的效果和他一样。

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

  
    

first pane

    

this script should allow only one pane to be visible at a time.

  
  
    

second pane

    

this script should allow only one pane to be visible at a time.

  
  
    

third pane

    

this script should allow only one pane to be visible at a time.

  

  然后为页面定义如下css:

  下面我们来介绍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自己看吧。。

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

转载地址:http://hraxx.baihongyu.com/

你可能感兴趣的文章
实战 Windows Server 2012 群集共享卷
查看>>
CSS 元素超出部分滚动, 并隐藏滚动条
查看>>
React中那些纠结你的地方(一)
查看>>
Docker入门安装教程
查看>>
PhoneGap极光推送 cordova消息推送
查看>>
Subarray Sum Equals K
查看>>
preventDefault, stopPropagation, stopImmediatePropagation 三者的区别
查看>>
算法题解:找出包含给定字符的最小窗口(枚举的一般方法)
查看>>
超级账本HyperLedger初体验
查看>>
完美解决html中select的option不能隐藏的问题。
查看>>
推荐5大开源工具,用于开发Kubernetes项目
查看>>
制定2015年的移动开发策略
查看>>
JPA 2.2改进了易用性
查看>>
从蚂蚁金服实践入手,带你深入了解 Service Mesh
查看>>
24周年,“常青树”Delphi发布新版本10.3.1
查看>>
7. 从数据库获取数据- 从零开始学Laravel
查看>>
阿里百川码力APP监控 来了!
查看>>
使用dotenv管理环境变量
查看>>
温故js系列(11)-BOM
查看>>
Vuex学习
查看>>