摘要:首先我们还是创建一个html文件,里面包含如下的html结构。代码如下: <p id="pane-container">   <p class="pane">     <h1>first pane</h1>     <p>this script should allow only one pane to be visible at a time.</p>   </p>   <p class="pane">     <h1>second pane</h1>     <p>this script should allow only one pane to be visible at a time.</p>   </p>   <p class="pane">     <h1>third pane</h1>     <p>this script should allow only one pane to be visible at a time.</p>   </p> </p>  

脚本宝典收集整理的这篇文章主要介绍了

js实例教程-jquery插件制作 手风琴Panel效果实现

脚本宝典小编觉得挺不错的,现在分享给大家,也给大家做个参考,希望能帮助你少写一行代码,多一份安全和惬意。

小宝典致力于为广大程序猿(媛)提供高品质的代码服务,请大家多多光顾小站,小宝典在此谢过。

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

代码如下:

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

然后为页面定义如下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的p下面的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();

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

代码如下:

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

然后为页面定义如下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的p下面的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();

觉得可用,就经常来吧!Javascript技巧 脚本宝典 欢迎评论哦! js技巧,巧夺天工,精雕玉琢。小宝典献丑了!

总结

以上是脚本宝典为你收集整理的

js实例教程-jquery插件制作 手风琴Panel效果实现

全部内容,希望文章能够帮你解决

js实例教程-jquery插件制作 手风琴Panel效果实现

所遇到的程序开发问题,欢迎加入QQ群277859234一起讨论学习。如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典网站推荐给程序员好友。 本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。

80%的人都看过