好久没有写博客了,最近有个需求关于数字键盘的,找了下网上的感觉有点重,太复杂!自己随手写了个符合自己需求的比较简单的,分享一下!希望大家指正
number.spiner.js
/** * 公共js方法 */ ;(function(win){ var NumberSpiner={ init:function(obj,type){ var that=this; var status=obj.getAttribute("data-status"); that.load(obj,type); if(status==1){ return; } // obj.onfoucs=function(){ // }; // obj.onblur=function(){ // var number_spinner=document.getElementById("number_spinner"); // number_spinner.style.display="none"; // }; }, load:function(obj,type){ var that=this; var $obj=$(obj); that.currentObj=$obj; var $number_spinner=$("#number_spinner"); if($number_spinner&&$number_spinner.length>0){ $number_spinner.show(); // return; }else{ var div=$(""); div.attr("id","number_spinner"); div.attr("class","number-spinner"); var tempArr=['
- '];
tempArr.push('
- 7');
tempArr.push('
- 8');
tempArr.push('
- 9');
tempArr.push('
- 4');
tempArr.push('
- 5');
tempArr.push('
- 6');
tempArr.push('
- 1');
tempArr.push('
- 2');
tempArr.push('
- 3');
tempArr.push('
- 0');
tempArr.push('
- .
- 删除');
tempArr.push('
基本css样式:
less版
.number-spinner{ .posa; z-index:3; // .p(3px); .number-box{ .p(2px); .bc(@white); .oh; li{ .w(33.3%); .fl; cursor:pointer; // .h(45); .lh(45); .number{ .m(2px); .yellow-style; .tc; } } } }
css版
.number-spinner { position: absolute; z-index: 3; } .number-spinner .number-box { padding: 2px; background-color: #ffffff; overflow: hidden; } .number-spinner .number-box li { width: 33.3%; float: left; cursor: pointer; line-height: 45px; } .number-spinner .number-box li .number { margin: 2px; background: #FDA24D; /* 一些不支持背景渐变的浏览器 */ background: -moz-linear-gradient(top, #fda24d, #fdda6f); background: -webkit-gradient(linear, 0 0, 0 bottom, from(#fda24d), to(#fdda6f)); background: -o-linear-gradient(top, #fda24d, #fdda6f); border-radius: 5px; text-align: center; }
引用处理
由于是用angularjs处理
$scope.orderManager.getNumber=function($event,type){ Team777NumberSpiner.init($event.target,type); };