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

 更新时间:2013年11月19日 16:06:16   作者:  
今天所要分享的控件是单选按钮,一个基于jquery扩展漂亮的单选按钮——RadioButton,喜欢的朋友可以收藏下
继续分享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 JSON的解析方式分享

    jQuery JSON的解析方式分享

    第一次用JSON作为jquery异步请求的传输对象,结果在jquery请求后返回的结果是字符串还是json对象上折腾了半天。
    2011-04-04
  • 基于jQuery+JSON的省市二三级联动效果

    基于jQuery+JSON的省市二三级联动效果

    本文给大家分享的是利用jQuery插件,通过读取JSON数据,实现无刷新动态下拉省市二(三)级联动效果,十分的简单实用,效果也非常棒,有需要的小伙伴可以参考下。
    2015-06-06
  • 基于jQuery的仿flash的广告轮播

    基于jQuery的仿flash的广告轮播

    很多网站的首页都有广告轮播,今天闲来看了一网站的首页广告轮播方式,是通过 jQuery的blockSlide插件实现的,然后自己测试了一下,很好。
    2010-11-11
  • jQuery中元素选择器(element)简单用法示例

    jQuery中元素选择器(element)简单用法示例

    这篇文章主要介绍了jQuery中元素选择器(element)用法,简单通俗的说明了jQuery元素选择器的功能、用法并结合实例形式分析了jQuery元素选择器的相关使用技巧与注意事项,需要的朋友可以参考下
    2018-05-05
  • jQuery使用元素属性attr赋值详解

    jQuery使用元素属性attr赋值详解

    本文主要给大家讲解的是jQuery使用元素属性attr设置多个键值或函数的方法和示例,非常的实用,推荐给小伙伴们参考下。
    2015-02-02
  • 基于CSS3和jQuery实现跟随鼠标方位的Hover特效

    基于CSS3和jQuery实现跟随鼠标方位的Hover特效

    这篇文章主要介绍了基于CSS3和jQuery实现跟随鼠标方位的Hover特效的相关资料,需要的朋友可以参考下
    2016-07-07
  • 浅析jQuery中常用的元素查找方法总结

    浅析jQuery中常用的元素查找方法总结

    本篇文章是对jQuery中常用的元素查找方法进行了详细的总结和介绍,需要的朋友参考下
    2013-07-07
  • jquery实现弹出层登录和全屏层注册特效

    jquery实现弹出层登录和全屏层注册特效

    这篇文章主要为大家详细介绍了jquery实现弹出层登录和全屏层注册特效,推荐给大家,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2015-08-08
  • jQuery的one()方法用法实例

    jQuery的one()方法用法实例

    这篇文章主要介绍了jQuery的one()方法用法,实例分析了one()方法的功能、定义及为匹配元素的特定事件绑定一个一次性的事件处理方法使用技巧,需要的朋友可以参考下
    2015-01-01
  • jquery 获取 outerHtml 包含当前节点本身的代码

    jquery 获取 outerHtml 包含当前节点本身的代码

    jQuery.html() 是获取当前节点下的html代码,并不包含当前节点本身的代码,后来实验发现有一个jQuery的一个方法可以解决
    2014-10-10

最新评论