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

Html部分代码如下:

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

Css部分代码如下:

  1. .combox{float:left;background:url(/img/Icon_BG.png);}
  2. .combox{width:16px;height:16px;background-position:-21px -40px;cursor:pointer;font-size:9px;}
  3. .combox.checked{background-position:-37px -40px;}

Js部分代码如下:

1.自定复选框类

  1. //复选框
  2. var CheckBox = function () {
  3. this.obj;
  4. var _this = this, _obj;
  5. //初始化
  6. this.init = function () {
  7. _obj = _this.obj;
  8. var tem = _obj.length > 1 ? _obj.eq(0) : _obj;
  9. if (tem.length == 1 && tem.attr('class').indexOf('combox') == -1) {
  10. showMessage("控件属性设置有误:部分控件并不是复选框!");
  11. return;
  12. }
  13. //对象单击事件
  14. var click_fun = function (obj) {
  15. if (obj.attr('class').indexOf('checked') > -1) {
  16. obj.removeClass('checked');
  17. _this.click_cancel();
  18. } else {
  19. obj.addClass('checked');
  20. _this.click_callback();
  21. }
  22. }
  23. //设置有文字复选框
  24. if (_obj.attr('_txt') != undefined) {
  25. _obj.each(function (i) {
  26. var cb = _obj.eq(i);
  27. cb.wrapAll('<font class="cb_txt"></font>');
  28. //文本单击事件
  29. cb.parent().append(cb.attr('_txt')).click(function () { click_fun(cb); });
  30. });
  31. } else//对象点击事件
  32. _obj.unbind('click').click(function () { click_fun($(this)); });
  33. }
  34. //点击回调事件
  35. this.click_callback = function () { }
  36. //取消选择事件
  37. this.click_cancel = function () { }
  38. }

2。调用如下:

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

使用的图片:

示例展示图:

基于jquery扩展漂亮的CheckBox的更多相关文章

  1. 基于jquery扩展漂亮的分页控件(ajax)

    分页控件式大家在熟悉不过的控件,很多情况下都需要使用到分页控件来完成列表数据加载操作,在很多分页控件中有的编写麻烦,有的应用扩展比较复杂,有的分页控件样式比较丑陋,有的分页控件用户体验操作比较简单等等 ...

  2. 一款基于jquery ui漂亮的可拖动div实例

    今天要给大家带来一款基于jquery ui漂亮的可拖动div实例.这款实例用了图片当背景,div层采用了幽灵透明效果.div拖动是基于jquery ui的.界面非常漂亮.一起看下效果图: 在线预览   ...

  3. 一款基于jQuery的漂亮弹出层

    特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...

  4. 基于jquery的可拖动div

    昨天给大家介绍了一款基于jquery ui漂亮的可拖动div实例,今天要给大家分享一款基于jquery的可拖动div.这款可拖动div只要引用jquery就可以,无需引用jquery ui.还实时记录 ...

  5. 《基于JQuery和CSS的特效整理》系列分享专栏

    <基于JQuery和CSS的特效整理>已整理成PDF文档,点击可直接下载至本地查阅https://www.webfalse.com/read/201724.html 文章 一款基于jQue ...

  6. 一款基于jquery漂亮的按钮

    之前为大家分享了好多css3实现的按钮.今天给大家分享一款基于jquery漂亮的按钮.这款按钮背景下用了一张图片.当鼠标经过的时候背景用半透明div遮住.一起看下效果图: 在线预览   源码下载 实现 ...

  7. 基于jQuery 常用WEB控件收集

    Horizontal accordion: jQuery 基于jQuery开发,非常简单的水平方向折叠控件. Horizontal accordion: jQuery jQuery-Horizonta ...

  8. web前端----jQuery扩展(很重要!!)

    1.jQuery扩展语法 把扩展的内容就可以写到xxxx.js文件了,在主文件中直接导入就行了. 用法1.$.xxx() $.extend({ "GDP": function () ...

  9. 基于jQuery的Validate表单验证

    表单验证可以说在前端开发工作中是无处不在的~ 有数据,有登录,有表单, 都需要前端验证~~  而我工作中用到最多的就是基于基于jQuery的Validate表单验证~  就向下面这样~ 因为今天有个朋 ...

随机推荐

  1. Python/spss-多元回归建模-共线性诊断2(推荐AA)

    sklearn实战-乳腺癌细胞数据挖掘(博客主亲自录制视频教程) https://study.163.com/course/introduction.htm?courseId=1005269003&a ...

  2. synchronized 加锁Integer对象(数据重复)详解

    场景描述:多线程输出1到100,对静态Integer对象加锁,synchronized代码块中操作Integer对象,发生线程安全问题(数据重复) 代码: public class MyRunnabl ...

  3. 层级 z-index 透明opacity

    在正常情况下,层级的大小由顺序决定,后面的元素要比前面的元素的层级要高 有定位元素的层级要比没有定位元素层级要高 在都有定位的情况下,层级还是取决于书写顺序 z-index 层级(仅能在定位元素上奏效 ...

  4. tf.session.run()单函数运行和多函数运行区别

    tf.session.run()单函数运行和多函数运行区别 觉得有用的话,欢迎一起讨论相互学习~Follow Me problem instruction sess.run([a,b]) # (1)同 ...

  5. IBatisNet+Oracle.ManagedDataAccess打造无需安装oracle客户端和ODP即可连接oracle数据库

    库环境: Oracle.ManagedDataAccess 版本:4.122.1.0 IBatisNet  版本:1.6.2 其实很简单的,只需在驱动配置那里添加上Oracle.ManagedData ...

  6. CSS3笔记-加强版

    属性选择器:   E[attr]只使用属性名,但没有确定任何属性值 E[attr="value"]指定属性名,并指定了该属性的属性值 E[attr~="value&quo ...

  7. HTML5-Y音频与视频

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. 51nod 1629 B君的圆锥

    1629 B君的圆锥 基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题  收藏  关注 B君要用一个表面积为S的圆锥将白山云包起来.   B君希望包住的白山云体积尽量 ...

  9. 分块+deque维护 Codeforces Round #260 (Div. 1) D. Serega and Fun

    D. Serega and Fun time limit per test 4 seconds memory limit per test 256 megabytes input standard i ...

  10. 重构改善既有代码设计--重构手法18:Self Encapsulate Field (自封装字段)

    你直接访问一个值域(field),但与值域之间的耦合关系逐渐变得笨拙. 为这个值域建立取值/设值函数(getting/setting methods),并且只以这些函数来访问值域. private i ...