基于jquery自定义的漂亮单选按钮RadioButton


Posted in Javascript onNovember 19, 2013

继续分享web前端自定义控件,今天所要分享的控件是单选按钮,希望对你有收获,有好的建议也希望能留言给我。代码如下:

Html代码如下:

<div style="margin:50px;float:left;"> 
<b class="radio" _txt="单选我"></b> 
<b class="radio" _txt="单选你"></b> 
<b class="radio" _txt="单选他"></b> 
</div>

Css代码如下:
.radio{float:left;background:url(/img/Icon_BG.png);} 
.radio{width:14px;height:14px;background-position:0px -58px;cursor:pointer;font-size:9px;} 
.radio.checked{background-position: -15px -58px;} 
.radio_txt{float:left;margin:0px 0 0 10px;cursor:pointer;line-height:14px;font-size:12px;} 
.radio_txt .radio{margin-right:5px;}

Js部分代码:

1、自定义单选按钮类

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

2、实例化:
//初始化单选框 
var radio = new RadioButton(); 
radio.obj = $('.radio'); 
radio.init();

示例图片:
基于jquery自定义的漂亮单选按钮RadioButton 
样式集合图:
基于jquery自定义的漂亮单选按钮RadioButton
Javascript 相关文章推荐
javascript 面向对象编程 function也是类
Sep 17 Javascript
Extjs学习笔记之六 面版
Jan 08 Javascript
理解Javascript_05_原型继承原理
Oct 13 Javascript
JavaScript中把数字转换为字符串的程序代码
Jun 19 Javascript
javascript实现当前页导航激活的方法
Feb 27 Javascript
javascript实现rgb颜色转换成16进制格式
Jul 10 Javascript
实例讲解jquery与json的结合
Jan 07 Javascript
jquery ajax双击div可直接修改div中的内容
Mar 04 Javascript
浅谈通过JS拦截 pushState和replaceState事件
Jul 21 Javascript
详解如何用模块化的方式写vuejs
Dec 16 Javascript
AngularJs的$http发送POST请求,php无法接收Post的数据问题及解决方案
Aug 13 Javascript
通过实例解析js可枚举属性与不可枚举属性
Dec 02 Javascript
基于jquery扩展漂亮的下拉框可以二次修改
Nov 19 #Javascript
showModelDialog弹出文件下载窗口的使用示例
Nov 19 #Javascript
基于jquery扩展漂亮的CheckBox(自己编写)
Nov 19 #Javascript
jquery showModelDialog的使用方法示例详解
Nov 19 #Javascript
js阻止冒泡及jquery阻止事件冒泡示例介绍
Nov 19 #Javascript
禁止ajax缓存获取程序最新数据的方法
Nov 19 #Javascript
JQueryiframe页面操作父页面中的元素与方法(实例讲解)
Nov 19 #Javascript
You might like
PHP入门速成教程
2007/03/19 PHP
php下通过伪造http头破解防盗链的代码
2010/07/03 PHP
浅析linux下apache服务器的配置和管理
2013/08/10 PHP
PHP COOKIE及时生效的方法介绍
2014/02/14 PHP
ThinkPHP5与单元测试PHPUnit使用详解
2020/02/23 PHP
JavaScript中两种链式调用实现代码
2011/01/12 Javascript
JQuery AJAX 中文乱码问题解决
2013/06/05 Javascript
JAVASCRIPT模式窗口中下载文件无法接收iframe的流
2013/10/11 Javascript
基于jQuery的判断iPad、iPhone、Android是横屏还是竖屏的代码
2014/05/11 Javascript
JS实现超简洁网页title标题跑动闪烁提示效果代码
2015/10/23 Javascript
jQuery实现鼠标选中文字后弹出提示窗口效果【附demo源码】
2016/09/05 Javascript
jQuery实现可展开折叠的导航效果示例
2016/09/12 Javascript
vuejs响应用户事件(如点击事件)
2017/03/14 Javascript
微信小程序实现鼠标拖动效果示例
2017/12/01 Javascript
vue-cli+iview项目打包上线之后图标不显示问题及解决方法
2019/10/16 Javascript
vue实现循环滚动列表
2020/06/30 Javascript
js 执行上下文和作用域的相关总结
2021/02/08 Javascript
Python统计列表中的重复项出现的次数的方法
2014/08/18 Python
Python数据类型详解(一)字符串
2016/05/08 Python
python下setuptools的安装详解及No module named setuptools的解决方法
2017/07/06 Python
Python 25行代码实现的RSA算法详解
2018/04/10 Python
python3利用tcp实现文件夹远程传输
2018/07/28 Python
在Python中pandas.DataFrame重置索引名称的实例
2018/11/06 Python
python使用原始套接字发送二层包(链路层帧)的方法
2019/07/22 Python
Python切图九宫格的实现方法
2019/10/10 Python
Python assert关键字原理及实例解析
2019/12/13 Python
详解css3 object-fit属性
2018/07/27 HTML / CSS
CSS3 对过渡(transition)进行调速以及延时
2020/10/21 HTML / CSS
HTML5之WebGL 3D概述(下)—借助类库开发及框架介绍
2013/01/31 HTML / CSS
Gap中国官网:美式休闲风服饰
2017/02/05 全球购物
自荐信的五个重要部分
2013/10/29 职场文书
超市工作总结范文2014
2014/12/19 职场文书
市级三好学生评语
2014/12/29 职场文书
python实现求纯色彩图像的边框
2021/04/08 Python
CSS 制作波浪效果的思路
2021/05/18 HTML / CSS
用Python进行栅格数据的分区统计和批量提取
2021/05/27 Python