基于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 相关文章推荐
在视频前插入广告
Nov 20 Javascript
写的htc的数据表格
Jan 20 Javascript
javascript replace方法与正则表达式
Feb 19 Javascript
jQuery实现统计复选框选中数量
Nov 24 Javascript
jquery+ajax实现注册实时验证实例详解
Dec 08 Javascript
js编写贪吃蛇的小游戏
Aug 24 Javascript
jquery对象和DOM对象的相互转换详解
Oct 18 Javascript
JavaScript实现设置默认日期范围为最近40天的方法分析
Jul 12 Javascript
快速搭建vue2.0+boostrap项目的方法
Apr 09 Javascript
Node 升级到最新稳定版的方法分享
May 17 Javascript
详解JavaScript栈内存与堆内存
Apr 04 Javascript
vue 实现移动端键盘搜索事件监听
Nov 06 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
实现了一个PHP5的getter/setter基类的代码
2007/02/25 PHP
浅析PHP中Session可能会引起并发问题
2015/07/23 PHP
EASYUI TREEGRID异步加载数据实现方法
2012/08/22 Javascript
两种常用的javascript数组去重方法思路及代码
2013/03/26 Javascript
JQuery制作的放大效果的popup对话框(未添加任何jquery plugin)分享
2013/04/28 Javascript
jquery判断RadioButtonList和RadioButton中是否有选中项示例
2013/09/29 Javascript
JS取文本框中最小值的简单实例
2013/11/29 Javascript
在JavaScript中使用NaN值的方法
2015/06/05 Javascript
JS验证邮件地址格式方法小结
2015/12/01 Javascript
jquery中用函数来设置css样式
2016/12/22 Javascript
angularjs中ng-attr的用法详解
2016/12/31 Javascript
微信小程序图片宽100%显示并且不变形
2017/06/21 Javascript
基于JavaScript表单脚本(详解)
2017/10/18 Javascript
js实现rem自动匹配计算font-size的示例
2017/11/18 Javascript
vue树形结构获取键值的方法示例
2018/06/21 Javascript
在小程序中集成redux/immutable/thunk第三方库的方法
2018/08/12 Javascript
深入理解 JS 垃圾回收
2019/06/03 Javascript
详解package.json版本号规则
2019/08/01 Javascript
typescript配置alias的详细步骤
2020/08/12 Javascript
js实现右键弹出自定义菜单
2020/09/08 Javascript
利用python程序生成word和PDF文档的方法
2017/02/14 Python
浅谈python配置与使用OpenCV踩的一些坑
2018/04/02 Python
Series和DataFrame使用简单入门
2019/11/13 Python
opencv python图像梯度实例详解
2020/02/04 Python
使用CSS Grid布局实现网格的流动
2014/12/30 HTML / CSS
CSS3中各种颜色属性的使用教程
2016/05/17 HTML / CSS
英国领先的男士美容护发用品公司:Mankind
2016/08/31 全球购物
美国大型的健身社区和补充商店:Bodybuilding.com
2016/09/06 全球购物
Michael Kors美国官网:美式奢侈生活风格的代表
2016/11/25 全球购物
新加坡最受追捧的体验平台:Hapz
2018/01/01 全球购物
纽约香氛品牌:NEST Fragrance
2018/10/15 全球购物
如何填写个人简历自我评价
2013/12/10 职场文书
大学自荐信
2013/12/12 职场文书
致裁判员加油稿
2014/02/08 职场文书
《记承天寺夜游》教学反思
2014/02/16 职场文书
优秀毕业生主要事迹材料
2015/11/04 职场文书