jquery实现的代替传统checkbox样式插件


Posted in Javascript onJune 19, 2015

本文实例讲述了jquery实现的代替传统checkbox样式插件。分享给大家供大家参考。具体如下:

效果图如下:

jquery实现的代替传统checkbox样式插件

具体代码如下:

(function($){
  $.fn.tzCheckbox = function(options){
    // Default On / Off labels:
    options = $.extend({
      labels : ['ON','OFF']
    },options);
    return this.each(function(){
      var originalCheckBox = $(this),
        labels = [];
      // Checking for the data-on / data-off HTML5 data attributes:
      if(originalCheckBox.data('on')){
        labels[0] = originalCheckBox.data('on');
        labels[1] = originalCheckBox.data('off');
      }
      else labels = options.labels;
      // Creating the new checkbox markup:
      var checkBox = $('<span>',{
        className: 'tzCheckBox '+(this.checked?'checked':''),
        html:'<span class="tzCBContent">'+labels[this.checked?0:1]+
            '</span><span class="tzCBPart"></span>'
      });
      // Inserting the new checkbox, and hiding the original:
      checkBox.insertAfter(originalCheckBox.hide());
      checkBox.click(function(){
        checkBox.toggleClass('checked');
        var isChecked = checkBox.hasClass('checked');
        // Synchronizing the original checkbox:
        originalCheckBox.attr('checked',isChecked);
        checkBox.find('.tzCBContent').html(labels[isChecked?0:1]);
      });
      // Listening for changes on the original and affecting the new one:
      originalCheckBox.bind('change',function(){
        checkBox.click();
      });
    });
  };
})(jQuery);

希望本文所述对大家的jQuery程序设计有所帮助。

Javascript 相关文章推荐
JavaScript入门教程(5) js Screen屏幕对象
Jan 31 Javascript
Javascript中的var_dump函数实现代码
Sep 07 Javascript
SWFObject 2.1以上版本语法介绍
Jul 10 Javascript
EasyUI中datagrid在ie下reload失败解决方案
Mar 09 Javascript
解析如何利用iframe标签以及js制作时钟
Dec 08 Javascript
jquery pagination插件动态分页实例(Bootstrap分页)
Dec 23 Javascript
EasyUI学习之Combobox级联下拉列表(2)
Dec 29 Javascript
JS实现课堂随机点名和顺序点名
Mar 09 Javascript
Vue.js简易安装和快速入门(第二课)
Oct 17 Javascript
基于Vue2的独立构建与运行时构建的差别(详解)
Dec 06 Javascript
vue实现表单录入小案例
Sep 27 Javascript
vue3获取当前路由地址
Feb 18 Vue.js
JQuery实现的图文自动轮播效果插件
Jun 19 #Javascript
移除AngularJS下URL中的#字符的方法
Jun 19 #Javascript
使用AngularJS创建单页应用的编程指引
Jun 19 #Javascript
使用AngularJS实现可伸缩的页面切换的方法
Jun 19 #Javascript
使用AngularJS实现表单向导的方法
Jun 19 #Javascript
举例详解AngularJS中ngShow和ngHide的使用方法
Jun 19 #Javascript
使用AngularJS和PHP的Laravel实现单页评论的方法
Jun 19 #Javascript
You might like
在同一窗体中使用PHP来处理多个提交任务
2006/10/09 PHP
php 获取mysql数据库信息代码
2009/03/12 PHP
如何用PHP实现插入排序?
2013/04/10 PHP
php类的扩展和继承用法实例
2015/06/20 PHP
启用Csrf后POST数据时出现的400错误
2015/07/05 PHP
CodeIgniter读写分离实现方法详解
2016/01/20 PHP
laravel批量生成假数据的方法
2019/10/09 PHP
JQuery 学习技巧总结
2010/05/21 Javascript
随窗体滑动的小插件sticky源码
2013/06/21 Javascript
jQuery的DOM操作之删除节点示例
2014/01/03 Javascript
Jquery实现的一种常用高亮效果示例代码
2014/01/28 Javascript
JS 实现导航菜单中的二级下拉菜单的几种方式
2016/10/31 Javascript
js实现日历与定时器
2017/02/22 Javascript
妙用缓存调用链实现JS方法的重载
2018/04/30 Javascript
js实现图片区域可点击大小随意改变(适用移动端)代码实例
2019/09/11 Javascript
细述Javascript的加法运算符的具体使用
2019/10/18 Javascript
ES6 class类链式继承,实例化及react super(props)原理详解
2020/02/15 Javascript
JavaScript常用工具函数库汇总
2020/09/17 Javascript
深入浅析python继承问题
2016/05/29 Python
CentOS6.5设置Django开发环境
2016/10/13 Python
浅谈Python爬取网页的编码处理
2016/11/04 Python
Python正则表达式分组概念与用法详解
2017/06/24 Python
获取Django项目的全部url方法详解
2017/10/26 Python
NumPy 如何生成多维数组的方法
2018/02/05 Python
python sort、sort_index方法代码实例
2019/03/28 Python
python简单验证码识别的实现方法
2019/05/10 Python
django 连接数据库 sqlite的例子
2019/08/14 Python
Python实现动态循环输出文字功能
2020/05/07 Python
Canvas实现保存图片到本地的示例代码
2018/06/28 HTML / CSS
物理系毕业生自荐信
2013/11/01 职场文书
全神贯注教学反思
2014/02/03 职场文书
煤矿安全演讲稿
2014/05/09 职场文书
暑期培训班策划方案
2014/08/26 职场文书
2014年爱国卫生工作总结
2014/11/22 职场文书
2015年公司工作总结
2015/04/25 职场文书
Java面试题冲刺第十六天--消息队列
2021/08/07 面试题