轻松实现jquery选项卡切换效果

 更新时间:2016年10月10日 08:46:22   作者:菜菜小言  
这篇文章主要帮助大家轻松实现jquery选项卡切换效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

很早之想就学习jquery的插件写法,一直拖到现在,今天趁着没什么工作忙,搜索些资料学习下,写了个比较简单的选项卡效果。

刚开始有看到一个很通俗易通的例子:alert对话框

jquery.alertMsg.js

/**
 * [description]
 * @param {[type]} $ [description]
 * @return {[type]} [description]
 */
(function($){

 $.fn.alertMsg = function(options) {

 var defaults = {
  mouseEvent: 'clcik',
  msg: 'hello world'
 }
 var options = $.extend(defaults, options);
 var $this = $(this);

 $this.on(options.mouseEvent, function(e){
  alert(options.msg);
 })
 }

})(jQuery)

调用方式:

<span id="test">test</span>

$(function(){
 $('#test').alertMsg({
  mouseEvent : "click", 
  msg : "第一次写插件!" 
 });
});

jQuery插件结构

(function($){
 // tabs 自定义的插件名称
 $.fn.tabs = function(options) {

  // 设置默认参数
  var defaults = {
   activeClass: 'active'
   ... 
  }
  // 对象扩展
  var options = $.extend(defaults, options);

  return $(this).each(function(){
   // 编写相应实现代码
  })
 }

})(jQuery)

选项卡实现:

1、HTML结构

<div id="tab">
 <ul>
  <li>选项1</li>
  <li>选项2</li>
  <li>选项3</li>
  <li>选项4</li>
 </ul>
 <div id="tabCon" class="tab-con">
  <div>1的内容</div>
  <div>2的内容</div>
  <div>3的内容</div>
  <div>4的内容</div>
 </div>
</div>


2、jquery.tabs.js

(function($){

 $.fn.tabs = function(options) {

   var defaults = {
    Event: 'click',
    activeClass: 'active'
   }
   var options = $.extend(defaults, options);

   return $(this).each(function(){

    var $thisTab = $(this).find('ul');
    var $tabCon = $thisTab.siblings('div');

    $tabCon.find('div').each(function(){
     $(this).hide();
    });

    $thisTab.find('li:first').addClass(options.activeClass);
    $tabCon.find('div:first').show();

    $thisTab.find('li').each(function(index){

     $(this).on(options.Event, function(){

      $(this).siblings().removeClass(options.activeClass);
      $(this).addClass(options.activeClass);
      $tabCon.find('div').eq(index).show().siblings().hide();

     });
     
    });
   });
  }
 
})(jQuery)


3、调用

 $('#tab').tabs({
  activeClass: 'active'
 });

小结:对jQuery插件的初识,感觉应该还要继续优化和扩展,继续学习!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

精彩专题分享:javascript选项卡操作方法汇总 jQuery选项卡操作方法汇总

相关文章

  • 基于jQuery实现放大镜特效

    基于jQuery实现放大镜特效

    这篇文章主要介绍了基于jQuery实现放大镜效果,一般应用于放大查看商品图片,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2015-12-12
  • jQuery使用andSelf()来包含之前的选择集

    jQuery使用andSelf()来包含之前的选择集

    使用Destructive Method对wrapper set进行选择、过滤之后会产生一个新的结果集,可以使用andSelf()来包含之前的选择集
    2014-05-05
  • jQuery中parents()的使用说明

    jQuery中parents()的使用说明

    今天遇到一个有意思的问题,jquery有两个函数parent()和parents().通过这两个函数可以找到一个对象的父对象,又称作jquery的选择器。
    2010-11-11
  • jQuery AJAX与jQuery事件的分析讲解

    jQuery AJAX与jQuery事件的分析讲解

    今天小编就为大家分享一篇关于jQuery AJAX与jQuery事件的分析讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • 如何解决Jquery库及其他库之间的$命名冲突

    如何解决Jquery库及其他库之间的$命名冲突

    这篇文章介绍了Jquery库及其他库之间的$命名冲突的解决方法,有需要的朋友可以参考一下
    2013-09-09
  • JQuery Jcrop 实现图片裁剪的插件

    JQuery Jcrop 实现图片裁剪的插件

    非常不错的模拟 图片裁剪效果的实现代码,文件都是脚本之家本地的,大家可以直接另存为就可以了。
    2009-05-05
  • 12个超实用的JQuery代码片段

    12个超实用的JQuery代码片段

    这篇文章主要介绍了12个超实用的JQuery代码片段,代码简洁,具有实用价值,感兴趣的小伙伴们可以参考一下
    2015-11-11
  • jQuery remove()过滤被删除的元素(推荐)

    jQuery remove()过滤被删除的元素(推荐)

    jQuery remove() 方法也可接受一个参数,允许您对被删元素进行过滤。下面通过实例代码给大家介绍jQuery remove()过滤被删除的元素,需要的的朋友参考下吧
    2017-07-07
  • 有关jquery与DOM节点操作方法和属性记录

    有关jquery与DOM节点操作方法和属性记录

    下面小编就为大家带来一篇有关jquery与DOM节点操作方法和属性记录。小编觉得挺不错的,现在分享给大家,也给大家做个参考
    2016-04-04
  • jquery 键盘事件的使用方法详解

    jquery 键盘事件的使用方法详解

    这篇文章主要介绍了jquery 键盘事件的使用方法详解的相关资料,主要介绍keydown()、keyup()、keypress()等三种方法,需要的朋友可以参考下
    2017-09-09

最新评论