jquery模拟checkbox

输入图片说明 HTML代码:

<div class="box">
			<span class="checkbox_item">
				<input type="checkbox" />
				<label class="check_label on">
		            <i class="checkbox_icon "></i>
		            <em class="checkbox_text">项目一</em>
	            </label>
			</span>
			<span class="checkbox_item">
				<input type="checkbox" />
	            <label class="check_label">
		            <i class="checkbox_icon"></i>
		            <span class="checkbox_text">项目二</span>
	            </label>
			</span>
            <span class="checkbox_item">
            	<input type="checkbox" />
	            <label class="check_label">
		            <i class="checkbox_icon"></i>
		            <span class="checkbox_text">项目三</span>
	            </label>
            </span>
        </div>
        <script src="js/jquery-1.10.2.min.js" type="text/javascript"></script>
        <script src="js/checkbox.js" type="text/javascript"></script>
        <script type="text/javascript">
			$(".check_label").checkbox();
        </script>

CSS代码:

.checkbox_item input{position:absolute;top:-9999px;left:-9999px;}
.checkbox_icon{display:block;float:left;margin-right:5px;width:16px;height:16px;background:url(../images/checkbox_icon.png) 0 0;}
.check_label.on .checkbox_icon{background-position:-16px 0;}

checkbox.js代码:

;(function($){
	$.fn.extend({
		checkbox : function(){
			return this.each(function(){
				var $this = $(this);
				if($this.hasClass("on")){
    				$this.siblings("input").prop("checked","checked");
    			}else{
    				$this.siblings("input").removeAttr("checked");
    			}
    			$this.on("click",function(){
					if($this.hasClass("on")){
						$this.siblings("input").removeAttr("checked");
						$this.removeClass("on");
					}else{
						$this.siblings("input").prop("checked","checked");
						$this.addClass("on");
					}
				});	
			});
		}
	});	
})(jQuery);

转载于:https://my.oschina.net/u/2417339/blog/869103

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值