基于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();

示例图片:

以下为示例教程

RadioButton()

Contents

  • RadioButton()

    1. html代码
    2. init()
    3. click_callback()

html代码

<head>

<title></title>

<link href="/_css/common.css" rel="stylesheet" type="text/css" />

<script src="/_js/jquery-1.8.2.min.js" type="text/javascript"></script>

<script src="/_js/Valid.js" type="text/javascript"></script>

<script src="download.js" type="text/javascript"></script>

</head>

<body>

<div class="com_table">

   <b class="radio" _txt="1"></b>

   <b class="radio" _txt="2"></b>

   <b class="radio" _txt="3"></b>

</div>

</body>

init()

初始化对象

示例:

$(document).ready(function () {
   $(‘.com_table .radio‘).each(function (i, item) {
      var radio = new RadioButton();
      radio.obj = $(this);
      radio.init();
   })
})

展示效果:

click_callback()

选择事件

示例:

$(‘.com_table .radio‘).each(function (i, item) {
   var radio = new RadioButton();
   radio.obj = $(this);
   //选择事件
   radio.click_callback = function () {
   alert("已选择该项");
   }
   radio.init();
})

展示效果:

下载地址:

js单选框控件

http://www.tiaoceng.com/assemblydetail_31.html

时间: 2024-10-21 12:33:49

基于jquery扩展漂亮的单选按钮——RadioButton的相关文章

基于jquery扩展漂亮的下拉框——ComboBox

关于web前端自定义控件——ComboBox(下拉框),以往我在使用下拉框控件老是为了样式丑陋而烦恼,现在分享这个控件,希望有用的同仁们可以收藏,或进行二次修改,达到你想要的效果. 分解自定义下拉框: 1.创建构造函数,初始化赋值控件值. 2.绑定控件呈现在前台. 3.点击下拉框控件,展示下拉列表 4.点击触发下拉框控件,收起下拉列表. 5.点击下拉项触发事件. 代码如下: Html代码: 1 <b class="select_type"></b> css样式:

基于jquery扩展漂亮的CheckBox

大家都知道默认的html复选框控件样式可定义相当有限,无法满足大多用户的美观度.今天跟大家一起分享前一段时间自己编写的CheckBox控件.喜欢的朋友可以拿去使用,有什么好的建议希望你给我留言.废话不多说,切入正题. Html部分代码如下: <b class="combox"></b> Css部分代码如下: .combox{float:left;background:url(/img/Icon_BG.png);} .combox{width:16px;heigh

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

今天要给大家带来一款基于jquery ui漂亮的可拖动div实例.这款实例用了图片当背景,div层采用了幽灵透明效果.div拖动是基于jquery ui的.界面非常漂亮.一起看下效果图: 在线预览   源码下载 实现的代码. html代码: <div id="box1" class="box blurred-bg tinted"> <h1> Blurred Background</h1> <h2> By <a h

一款基于jQuery的漂亮弹出层

特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/mao2080/ 1.效果示例 2.代码样式 1 /* 2 * 基于jquery iziModal弹出窗插件 3 * by [email protected] 4 */ 5 $(function (){ 6 dialog = { 7 title : "提示信息", 8 /** 9 * 提示

基于jquery扩展的弹层控件

漂亮且超好用的弹出层事件类JS代码,支持各种对话框.弹出层等,弹出层可拖拽移动且拖拽流畅,浏览器兼容良好.可自定义内容.标题.宽高.按钮.和绑定相对应的事件简单方便的实现弹层,实现添加数据或显示详细信息等功能. 下面跟着我的步伐走 (1)准备好要显示的内容,这不仅仅是内容,也可以是html代码 (2)准备好内容之后,要记得给它取个响亮的标题,明确下主题,当然也可以不需要 (3)是不是觉得有些时候确定和取消这两个家伙没必要出现,如果不用它们可以将舍弃,不填他们就好了 是不是很简单,还在等什么,快来

CMDB项目CURD组件之基于jQuery扩展封装组件

request.body from django.shortcuts import render,HttpResponse from django.views import View import json class AssetView(View): def get(self,request,*args,**kwargs): # 数据库中获取数据 return render(request,'asset.html') class AssetJsonView(View): def get(sel

基于jquery的可拖动div

昨天给大家介绍了一款基于jquery ui漂亮的可拖动div实例,今天要给大家分享一款基于jquery的可拖动div.这款可拖动div只要引用jquery就可以,无需引用jquery ui.还实时记录的鼠标的坐标.一起看下效果图吧. 在线预览   源码下载 实现的代码. html代码: <span class="text noselect">DRAGGIN' WINDOWS<br /> <a href="http://www.w2bc.com&q

10款基于jQuery打造的大屏带导航焦点图

1.纯CSS3实现3D效果iPhone 6动画 iPhone 6刚发布不久,今天我们就用纯CSS3来把iPhone 6的外观简单地绘制出来,记得是用纯CSS3实现的哦,没有用一张图片.由于CSS3特性的运用,整个iPhone 6手机边框带有阴影,很有立体3D的视觉效果. 在线演示 源码下载 2.纯CSS3天气动画图标 这是一款基于纯CSS3的天气动画图标,利用CSS3特性,我们在这里绘制了7个关于天气的图标,并且每一个图标都有一套代表当前天气的动画特效,比如下雨天气,就会有下雨的动画,下雪也是如

一款基于jquery漂亮的按钮

之前为大家分享了好多css3实现的按钮.今天给大家分享一款基于jquery漂亮的按钮.这款按钮背景下用了一张图片.当鼠标经过的时候背景用半透明div遮住.一起看下效果图: 在线预览   源码下载 实现的代码. html代码: <a class="btn" data-js="btn"><span class="btn-inr"><span class="txt-a">See This Butt