基于jquery扩展漂亮的CheckBox(自己编写)


Posted in Javascript onNovember 19, 2013

大家都知道默认的html复选框控件样式可定义相当有限,无法满足大多用户的美观度。今天跟大家一起分享前一段时间自己编写的CheckBox控件。喜欢的朋友可以拿去使用,有什么好的建议希望你给我留言。废话不多说,切入正题。

Html部分代码如下:

<b class="combox"></b>

Css部分代码如下:
.combox{float:left;background:url(/img/Icon_BG.png);} 
.combox{width:16px;height:16px;background-position:-21px -40px;cursor:pointer;font-size:9px;} 
.combox.checked{background-position:-37px -40px;}

Js部分代码如下:

1、自定复选框类

//复选框 
var CheckBox = function () { 
this.obj; 
var _this = this, _obj; 
//初始化 
this.init = function () { 
_obj = _this.obj; 
var tem = _obj.length > 1 ? _obj.eq(0) : _obj; 
if (tem.length == 1 && tem.attr('class').indexOf('combox') == -1) { 
showMessage("控件属性设置有误:部分控件并不是复选框!"); 
return; 
} 
//对象单击事件 
var click_fun = function (obj) { 
if (obj.attr('class').indexOf('checked') > -1) { 
obj.removeClass('checked'); 
_this.click_cancel(); 
} else { 
obj.addClass('checked'); 
_this.click_callback(); 
} 
} //设置有文字复选框 
if (_obj.attr('_txt') != undefined) { 
_obj.each(function (i) { 
var cb = _obj.eq(i); 
cb.wrapAll('<font class="cb_txt"></font>'); 
//文本单击事件 
cb.parent().append(cb.attr('_txt')).click(function () { click_fun(cb); }); 
}); 
} else//对象点击事件 
_obj.unbind('click').click(function () { click_fun($(this)); }); 
} 
//点击回调事件 
this.click_callback = function () { } 
//取消选择事件 
this.click_cancel = function () { } 
}

2、调用如下:
var checkbox = new CheckBox(); 
checkbox.obj = $('.content ul li .combox'); 
//点击回调事件 根据自己的需求去调整,默认没有相应操作事件,可以不用赋值 
checkbox.click_callback = function () { fun_setPay(); } 
//取消选择事件 
checkbox.click_cancel = function () { fun_setPay(); } 
checkbox.init();

使用的图片:
基于jquery扩展漂亮的CheckBox(自己编写) 
示例展示图:
基于jquery扩展漂亮的CheckBox(自己编写)
Javascript 相关文章推荐
checkbox全选所涉及到的知识点介绍
Dec 31 Javascript
jquery选择器使用详解
Apr 08 Javascript
深入理解JavaScript系列(33):设计模式之策略模式详解
Mar 03 Javascript
JavaScript使用DeviceOne开发实战(一) 配置和起步
Dec 01 Javascript
js中用cssText设置css样式的简单方法
Sep 19 Javascript
Javascript实现一个简单的输入关键字添加标签效果实例
Jun 01 Javascript
微信小程序实现动态设置页面标题的方法【附源码下载】
Nov 29 Javascript
基于jQuery Ajax实现下拉框无刷新联动
Dec 06 jQuery
Koa2微信公众号开发之消息管理
May 16 Javascript
解决 viewer.js 动态更新图片导致无法预览的问题
May 14 Javascript
微信小程序 高德地图路线规划实现过程详解
Aug 05 Javascript
vue实现在进行增删改操作后刷新页面
Aug 05 Javascript
jquery showModelDialog的使用方法示例详解
Nov 19 #Javascript
js阻止冒泡及jquery阻止事件冒泡示例介绍
Nov 19 #Javascript
禁止ajax缓存获取程序最新数据的方法
Nov 19 #Javascript
JQueryiframe页面操作父页面中的元素与方法(实例讲解)
Nov 19 #Javascript
jQuery控制iFrame(实例代码)
Nov 19 #Javascript
jquery 检测元素是否存在的实例代码
Nov 19 #Javascript
JS复制内容到剪切板的实例代码(兼容IE与火狐)
Nov 19 #Javascript
You might like
解析php二分法查找数组是否包含某一元素
2013/05/23 PHP
WordPress的文章自动添加关键词及关键词的SEO优化
2016/03/01 PHP
PHP实现数组和对象的相互转换操作示例
2019/03/20 PHP
ext 列表页面关于多行查询的办法
2010/03/25 Javascript
JQuery右键菜单插件ContextMenu使用指南
2014/12/19 Javascript
javascript定义变量时带var与不带var的区别分析
2015/01/12 Javascript
jQuery性能优化技巧分析
2015/02/20 Javascript
JS实现超简单的鼠标拖动效果
2015/11/02 Javascript
浅析jQuery 遍历函数,javascript中的each遍历
2016/05/25 Javascript
BootStrap下jQuery自动完成的样式调整
2016/05/30 Javascript
Angular1.x复杂指令实例详解
2017/03/01 Javascript
Bootstrap与Angularjs的模态框实例代码
2017/08/03 Javascript
angularjs的单选框+ng-repeat的实现方法
2018/09/12 Javascript
15个顶级开源JavaScript框架和库
2018/10/10 Javascript
非常实用的jQuery代码段集锦【检测浏览器、滚动、复制、淡入淡出等】
2019/08/08 jQuery
vue.js实现照片放大功能
2020/06/23 Javascript
[00:33]DOTA2上海特级锦标赛 CDEC战队宣传片
2016/03/04 DOTA
[01:32:10]NAVI vs VG Supermajor 败者组 BO3 第一场 6.5
2018/06/06 DOTA
python根据时间生成mongodb的ObjectId的方法
2015/03/13 Python
简单介绍Python中的struct模块
2015/04/28 Python
python技能之数据导出excel的实例代码
2017/08/11 Python
Python 正则表达式爬虫使用案例解析
2019/09/23 Python
tensorflow通过模型文件,使用tensorboard查看其模型图Graph方式
2020/01/23 Python
python读取mysql数据绘制条形图
2020/03/25 Python
Python趣味实例,实现一个简单的抽奖刮刮卡
2020/07/18 Python
Python生成器generator原理及用法解析
2020/07/20 Python
Ubuntu20.04环境安装tensorflow2的方法步骤
2021/01/29 Python
为什么如下的代码int a=100,b=100;long int c=a * b;不能工作
2013/11/29 面试题
百度JavaScript笔试题
2015/01/15 面试题
竞争性谈判邀请书
2014/02/06 职场文书
关于九一八事变的演讲稿2014
2014/09/17 职场文书
给女朋友道歉的话大全
2015/01/20 职场文书
2015军训通讯稿大全
2015/07/18 职场文书
小学校长开学致辞
2015/07/29 职场文书
Idea连接MySQL数据库出现中文乱码的问题
2021/04/14 MySQL
Jmerte 分布式压测及分布式压测配置
2022/04/30 Java/Android