Commit 90aa1cad by Sweet Zhang

宝宝出生日期限制

parent fecfa5b1
.gearDate{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:10px;background-color:rgba(0,0,0,.2);display:block;position:fixed;top:0;left:0;width:100%;height:100%;z-index:9900;overflow:hidden;-webkit-animation-fill-mode:both;animation-fill-mode:both}.date_ctrl{vertical-align:middle;background-color:#d5d8df;color:#000;margin:0;height:auto;width:100%;position:absolute;left:0;bottom:0;z-index:9901;overflow:hidden;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slideInUp{-webkit-animation:slideInUp .3s;animation:slideInUp .3s}@-webkit-keyframes slideInUp{from{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@keyframes slideInUp{from{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.ym_roll,.date_roll,.datetime_roll,.time_roll{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;height:auto;overflow:hidden;background-color:transparent;-webkit-mask:-webkit-gradient(linear,0% 50%,0% 100%,from(#debb47),to(rgba(36,142,36,0)));-webkit-mask:-webkit-linear-gradient(top,#debb47 50%,rgba(36,142,36,0))}.ym_roll>div,.date_roll>div,.datetime_roll>div,.time_roll>div{font-size:2.3em;height:10em;float:left;background-color:transparent;position:relative;overflow:hidden;-webkit-box-flex:4;-webkit-flex:4;-ms-flex:4;flex:4}.ym_roll>div .gear,.date_roll>div .gear,.datetime_roll>div .gear,.time_roll>div .gear{width:100%;float:left;position:absolute;z-index:9902;margin-top:-4em}.date_roll_mask{-webkit-mask:-webkit-gradient(linear,0% 40%,0% 0%,from(#debb47),to(rgba(36,142,36,0)));-webkit-mask:-webkit-linear-gradient(bottom,#debb47 50%,rgba(36,142,36,0));padding:0}.date_roll>div:nth-child(2){-webkit-box-flex:2;-webkit-flex:2;-ms-flex:2;flex:2}.date_roll>div:nth-child(1),.datetime_roll>div:nth-child(1){-webkit-box-flex:4;-webkit-flex:4;-ms-flex:4;flex:4}.datetime_roll>div:first-child{-webkit-box-flex:6;-webkit-flex:6;-ms-flex:6;flex:6}.datetime_roll>div:last-child{-webkit-box-flex:6;-webkit-flex:6;-ms-flex:6;flex:6}.date_grid{position:relative;top:4em;width:100%;height:2em;margin:0;box-sizing:border-box;z-index:0;border-top:1px solid #abaeb5;border-bottom:1px solid #abaeb5}.date_grid>div{color:#000;position:absolute;right:0;top:0;font-size:.8em;line-height:2.5em}.date_roll>div:nth-child(3) .date_grid>div{left:42%}.datetime_roll>div .date_grid>div{right:0}.datetime_roll>div:first-child .date_grid>div{left:auto;right:0%}.datetime_roll>div:last-child .date_grid>div{left:50%}.time_roll>div:nth-child(1) .date_grid>div{right:1em}.ym_roll>div:nth-child(1) .date_grid>div{right:.1em}.ym_roll>div .date_grid>div,.time_roll>div .date_grid>div{right:5em}.date_btn{color:#0575f2;font-size:1.6em;line-height:1em;text-align:center;padding:.8em 1em}.date_btn_box:before,.date_btn_box:after{content:'';position:absolute;height:1px;width:100%;display:block;background-color:#96979b;z-index:15;-webkit-transform:scaleY(.33);transform:scaleY(.33)}.date_btn_box{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:stretch;-webkit-align-items:stretch;-ms-flex-align:stretch;align-items:stretch;background-color:#f1f2f4;position:relative}.date_btn_box:before{left:0;top:0;-webkit-transform-origin:50% 20%;transform-origin:50% 20%}.date_btn_box:after{left:0;bottom:0;-webkit-transform-origin:50% 70%;transform-origin:50% 70%}.date_roll>div:nth-child(1) .gear{text-indent:20%}.date_roll>div:nth-child(2) .gear{text-indent:-20%}.date_roll>div:nth-child(3) .gear{text-indent:-55%}.datetime_roll>div .gear{width:100%;text-indent:-25%}.datetime_roll>div:first-child .gear{text-indent:-10%}.datetime_roll>div:last-child .gear{text-indent:-50%}.ym_roll>div .gear,.time_roll>div .gear{width:100%;text-indent:-70%}.ym_roll>div:nth-child(1) .gear,.time_roll>div:nth-child(1) .gear{width:100%;text-indent:10%}.tooth{height:2em;line-height:2em;text-align:center}
\ No newline at end of file
...@@ -32,12 +32,17 @@ html, body { ...@@ -32,12 +32,17 @@ html, body {
} }
.formInfo input { .formInfo input {
display: block;
width: 100%; width: 100%;
height: 30px;
border: 1px solid #dbdbdb; border: 1px solid #dbdbdb;
padding-left: 15px;
border-radius: 3px; border-radius: 3px;
box-sizing: content-box; box-sizing: border-box;
box-shadow: none;
padding: 8px 15px;
height: 35px;
background: transparent;
-webkit-appearance: none;
line-height: 1.42857143;
} }
.formInfo > h5 { .formInfo > h5 {
...@@ -117,12 +122,18 @@ html, body { ...@@ -117,12 +122,18 @@ html, body {
justify-content: center; justify-content: center;
align-items: center; align-items: center;
position: absolute; position: absolute;
top: 46%; top: 65%;
left: 0; left: 0;
right: 0; right: 0;
} }
.dialog .closeBtn { .dialog .eqrcode,.dialog .icon {
display: flex;
justify-content: center;
margin: 8px 0;
}
#closeBtn {
border: 1px solid #fff; border: 1px solid #fff;
border-radius: 50%; border-radius: 50%;
width: 50px; width: 50px;
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
<link rel="stylesheet" href="./css/bootstrap.min.css"> <link rel="stylesheet" href="./css/bootstrap.min.css">
<link rel="stylesheet" href="./css/style.css"> <link rel="stylesheet" href="./css/style.css">
<link rel="shortcut icon" href="https://www.ydinsurance.cn/wp-content/uploads/2018/04/favicon.gif"/> <link rel="shortcut icon" href="https://www.ydinsurance.cn/wp-content/uploads/2018/04/favicon.gif"/>
<link rel="stylesheet" type="text/css" href="./css/LCalendar.css" />
<script> <script>
var _hmt = _hmt || []; var _hmt = _hmt || [];
(function () { (function () {
...@@ -36,16 +37,18 @@ ...@@ -36,16 +37,18 @@
<li> <li>
<div>出生日期</div> <div>出生日期</div>
<div> <div>
<input type="date" id="babyBirth"> <input type="text" name="babyBirth" id="babyBirth" placeholder="宝宝的出生日期" readonly="readonly" />
</div> </div>
</li> </li>
<li> <li>
<div>宝宝性别</div> <div>宝宝性别</div>
<div style="display: flex;align-items: center"> <div style="display: flex;align-items: center">
<div style="width:72px;height:30px;line-height: 30px;text-align: center;border-radius: 3px;border:1px solid #dbdbdb;color:#999;margin-right:10px;" class="babyGender" data-attr="男"> <div style="width:72px;height:30px;line-height: 30px;text-align: center;border-radius: 3px;border:1px solid #dbdbdb;color:#999;margin-right:10px;"
class="babyGender" data-attr="男">
</div> </div>
<div style="width:72px;height:30px;line-height: 30px;text-align: center;border-radius: 3px;border:1px solid #dbdbdb;color:#999" class="babyGender" data-attr="女"> <div style="width:72px;height:30px;line-height: 30px;text-align: center;border-radius: 3px;border:1px solid #dbdbdb;color:#999"
class="babyGender" data-attr="女">
</div> </div>
</div> </div>
...@@ -59,14 +62,16 @@ ...@@ -59,14 +62,16 @@
<li> <li>
<div>手机号码</div> <div>手机号码</div>
<div> <div>
<input type="text" placeholder="用于接收保费预测结果" id="phone"> <input type="tel" placeholder="用于接收保费预测结果" id="phone">
</div> </div>
</li> </li>
<li> <li>
<div style="visibility: hidden">输验证码</div> <div style="visibility: hidden">输验证码</div>
<div style="position: relative;margin-top:-15px;"> <div style="position: relative;margin-top:-15px;">
<input type="tel" placeholder="输入验证码" style="margin-right: 10px;width: calc(100% - 90px);" id="code"> <input type="tel" placeholder="输入验证码" style="margin-right: 10px;width: calc(100% - 90px);"
<button style="width:67px;font-size:12px;border-radius:3px;background:rgb(255,97,37);color:#fff;padding:0 5px;height:30px;line-height: 30px;box-sizing: content-box;border: none;" id="codeBtn"> id="code">
<button style="width:67px;font-size:12px;border-radius:3px;background:rgb(255,97,37);color:#fff;padding:0 5px;height:30px;line-height: 30px;box-sizing: content-box;border: none;"
id="codeBtn">
获取验证码 获取验证码
</button> </button>
</div> </div>
...@@ -83,18 +88,22 @@ ...@@ -83,18 +88,22 @@
<!--弹窗START--> <!--弹窗START-->
<div class="dialog"> <div class="dialog">
<div class="content"> <div class="content">
<div class="icon"></div> <div style="letter-spacing: 1px">专业儿童保险规划师将在1个工作日内为您致电服务和微信联系,请您留意接听电话机微信添加好友信息。</div>
<div>专业儿童保险规划师将在1个工作日内为您致电服务和微信联系,请您留意接听电话机微信添加好友信息。</div> <div class="eqrcode">
<div class="eqrcode"></div> <div style="width: 50%;">
<div>关注“银盾保险在线”公众号,更多热销产品抢先了解。</div> <img src="./images/mengge.jpg" alt="" class="img-responsive">
</div>
</div>
<div style="font-size: 12px;text-align: center;">关注“银盾保险在线”公众号,更多热销产品抢先了解。</div>
</div> </div>
<div class="closeContainer"><span class="closeBtn">X</span></div> <div class="closeContainer"><span id="closeBtn">X</span></div>
</div> </div>
<!--弹窗END--> <!--弹窗END-->
</div> </div>
<script src="https://res2.wx.qq.com/open/js/jweixin-1.4.0.js "></script> <script src="https://res2.wx.qq.com/open/js/jweixin-1.4.0.js "></script>
<script src="./js/jquery.min.js"></script> <script src="./js/jquery.min.js"></script>
<script src="./js/layer.js"></script> <script src="./js/layer.js"></script>
<script src="./js/LCalendar.js" type="text/javascript" charset="utf-8"></script>
<script src="./js/base.js"></script> <script src="./js/base.js"></script>
</body> </body>
</html> </html>
\ No newline at end of file
/**
* Created by Sweet on 2020/3/11.
*/
window.LCalendar=(function(){var MobileCalendar=function(){this.gearDate;this.minY=1900;this.minM=1;this.minD=1;this.maxY=2099;this.maxM=12;this.maxD=31;}
MobileCalendar.prototype={init:function(params){this.type=params.type;this.trigger=document.querySelector(params.trigger);if(this.trigger.getAttribute("data-lcalendar")!=null){var arr=this.trigger.getAttribute("data-lcalendar").split(',');var minArr=arr[0].split('-');this.minY=~~minArr[0];this.minM=~~minArr[1];this.minD=~~minArr[2];var maxArr=arr[1].split('-');this.maxY=~~maxArr[0];this.maxM=~~maxArr[1];this.maxD=~~maxArr[2];}
if(params.minDate){var minArr=params.minDate.split('-');this.minY=~~minArr[0];this.minM=~~minArr[1];this.minD=~~minArr[2];}
if(params.maxDate){var maxArr=params.maxDate.split('-');this.maxY=~~maxArr[0];this.maxM=~~maxArr[1];this.maxD=~~maxArr[2];}
this.bindEvent(this.type);},bindEvent:function(type){var _self=this;function popupDate(e){_self.gearDate=document.createElement("div");_self.gearDate.className="gearDate";_self.gearDate.innerHTML='<div class="date_ctrl slideInUp">'+
'<div class="date_btn_box">'+
'<div class="date_btn lcalendar_cancel">取消</div>'+
'<div class="date_btn lcalendar_finish">确定</div>'+
'</div>'+
'<div class="date_roll_mask">'+
'<div class="date_roll">'+
'<div>'+
'<div class="gear date_yy" data-datetype="date_yy"></div>'+
'<div class="date_grid">'+
'<div>年</div>'+
'</div>'+
'</div>'+
'<div>'+
'<div class="gear date_mm" data-datetype="date_mm"></div>'+
'<div class="date_grid">'+
'<div>月</div>'+
'</div>'+
'</div>'+
'<div>'+
'<div class="gear date_dd" data-datetype="date_dd"></div>'+
'<div class="date_grid">'+
'<div>日</div>'+
'</div>'+
'</div>'+
'</div>'+
'</div>'+
'</div>';document.body.appendChild(_self.gearDate);dateCtrlInit();var lcalendar_cancel=_self.gearDate.querySelector(".lcalendar_cancel");lcalendar_cancel.addEventListener('touchstart',closeMobileCalendar);var lcalendar_finish=_self.gearDate.querySelector(".lcalendar_finish");lcalendar_finish.addEventListener('touchstart',finishMobileDate);var date_yy=_self.gearDate.querySelector(".date_yy");var date_mm=_self.gearDate.querySelector(".date_mm");var date_dd=_self.gearDate.querySelector(".date_dd");date_yy.addEventListener('touchstart',gearTouchStart);date_mm.addEventListener('touchstart',gearTouchStart);date_dd.addEventListener('touchstart',gearTouchStart);date_yy.addEventListener('touchmove',gearTouchMove);date_mm.addEventListener('touchmove',gearTouchMove);date_dd.addEventListener('touchmove',gearTouchMove);date_yy.addEventListener('touchend',gearTouchEnd);date_mm.addEventListener('touchend',gearTouchEnd);date_dd.addEventListener('touchend',gearTouchEnd);}
function dateCtrlInit(){var date=new Date();var dateArr={yy:date.getFullYear(),mm:date.getMonth(),dd:date.getDate()-1};if(/^\d{4}-\d{1,2}-\d{1,2}$/.test(_self.trigger.value)){rs=_self.trigger.value.match(/(^|-)\d{1,4}/g);dateArr.yy=rs[0]-_self.minY;dateArr.mm=rs[1].replace(/-/g,"")-1;dateArr.dd=rs[2].replace(/-/g,"")-1;}else{dateArr.yy=dateArr.yy-_self.minY;}
_self.gearDate.querySelector(".date_yy").setAttribute("val",dateArr.yy);_self.gearDate.querySelector(".date_mm").setAttribute("val",dateArr.mm);_self.gearDate.querySelector(".date_dd").setAttribute("val",dateArr.dd);setDateGearTooth();}
function popupYM(e){_self.gearDate=document.createElement("div");_self.gearDate.className="gearDate";_self.gearDate.innerHTML='<div class="date_ctrl slideInUp">'+
'<div class="date_btn_box">'+
'<div class="date_btn lcalendar_cancel">取消</div>'+
'<div class="date_btn lcalendar_finish">确定</div>'+
'</div>'+
'<div class="date_roll_mask">'+
'<div class="ym_roll">'+
'<div>'+
'<div class="gear date_yy" data-datetype="date_yy"></div>'+
'<div class="date_grid">'+
'<div>年</div>'+
'</div>'+
'</div>'+
'<div>'+
'<div class="gear date_mm" data-datetype="date_mm"></div>'+
'<div class="date_grid">'+
'<div>月</div>'+
'</div>'+
'</div>'+
'</div>'+
'</div>'+
'</div>';document.body.appendChild(_self.gearDate);ymCtrlInit();var lcalendar_cancel=_self.gearDate.querySelector(".lcalendar_cancel");lcalendar_cancel.addEventListener('touchstart',closeMobileCalendar);var lcalendar_finish=_self.gearDate.querySelector(".lcalendar_finish");lcalendar_finish.addEventListener('touchstart',finishMobileYM);var date_yy=_self.gearDate.querySelector(".date_yy");var date_mm=_self.gearDate.querySelector(".date_mm");date_yy.addEventListener('touchstart',gearTouchStart);date_mm.addEventListener('touchstart',gearTouchStart);date_yy.addEventListener('touchmove',gearTouchMove);date_mm.addEventListener('touchmove',gearTouchMove);date_yy.addEventListener('touchend',gearTouchEnd);date_mm.addEventListener('touchend',gearTouchEnd);}
function ymCtrlInit(){var date=new Date();var dateArr={yy:date.getFullYear(),mm:date.getMonth()};if(/^\d{4}-\d{1,2}$/.test(_self.trigger.value)){rs=_self.trigger.value.match(/(^|-)\d{1,4}/g);dateArr.yy=rs[0]-_self.minY;dateArr.mm=rs[1].replace(/-/g,"")-1;}else{dateArr.yy=dateArr.yy-_self.minY;}
_self.gearDate.querySelector(".date_yy").setAttribute("val",dateArr.yy);_self.gearDate.querySelector(".date_mm").setAttribute("val",dateArr.mm);setDateGearTooth();}
function popupDateTime(e){_self.gearDate=document.createElement("div");_self.gearDate.className="gearDatetime";_self.gearDate.innerHTML='<div class="date_ctrl slideInUp">'+
'<div class="date_btn_box">'+
'<div class="date_btn lcalendar_cancel">取消</div>'+
'<div class="date_btn lcalendar_finish">确定</div>'+
'</div>'+
'<div class="date_roll_mask">'+
'<div class="datetime_roll">'+
'<div>'+
'<div class="gear date_yy" data-datetype="date_yy"></div>'+
'<div class="date_grid">'+
'<div>年</div>'+
'</div>'+
'</div>'+
'<div>'+
'<div class="gear date_mm" data-datetype="date_mm"></div>'+
'<div class="date_grid">'+
'<div>月</div>'+
'</div>'+
'</div>'+
'<div>'+
'<div class="gear date_dd" data-datetype="date_dd"></div>'+
'<div class="date_grid">'+
'<div>日</div>'+
'</div>'+
'</div>'+
'<div>'+
'<div class="gear time_hh" data-datetype="time_hh"></div>'+
'<div class="date_grid">'+
'<div>时</div>'+
'</div>'+
'</div>'+
'<div>'+
'<div class="gear time_mm" data-datetype="time_mm"></div>'+
'<div class="date_grid">'+
'<div>分</div>'+
'</div>'+
'</div>'+
'</div>'+
'</div>'+
'</div>';document.body.appendChild(_self.gearDate);dateTimeCtrlInit();var lcalendar_cancel=_self.gearDate.querySelector(".lcalendar_cancel");lcalendar_cancel.addEventListener('touchstart',closeMobileCalendar);var lcalendar_finish=_self.gearDate.querySelector(".lcalendar_finish");lcalendar_finish.addEventListener('touchstart',finishMobileDateTime);var date_yy=_self.gearDate.querySelector(".date_yy");var date_mm=_self.gearDate.querySelector(".date_mm");var date_dd=_self.gearDate.querySelector(".date_dd");var time_hh=_self.gearDate.querySelector(".time_hh");var time_mm=_self.gearDate.querySelector(".time_mm");date_yy.addEventListener('touchstart',gearTouchStart);date_mm.addEventListener('touchstart',gearTouchStart);date_dd.addEventListener('touchstart',gearTouchStart);time_hh.addEventListener('touchstart',gearTouchStart);time_mm.addEventListener('touchstart',gearTouchStart);date_yy.addEventListener('touchmove',gearTouchMove);date_mm.addEventListener('touchmove',gearTouchMove);date_dd.addEventListener('touchmove',gearTouchMove);time_hh.addEventListener('touchmove',gearTouchMove);time_mm.addEventListener('touchmove',gearTouchMove);date_yy.addEventListener('touchend',gearTouchEnd);date_mm.addEventListener('touchend',gearTouchEnd);date_dd.addEventListener('touchend',gearTouchEnd);time_hh.addEventListener('touchend',gearTouchEnd);time_mm.addEventListener('touchend',gearTouchEnd);}
function dateTimeCtrlInit(){var date=new Date();var dateArr={yy:date.getFullYear(),mm:date.getMonth(),dd:date.getDate()-1,hh:date.getHours(),mi:date.getMinutes()};if(/^\d{4}-\d{1,2}-\d{1,2}\s\d{2}:\d{2}$/.test(_self.trigger.value)){rs=_self.trigger.value.match(/(^|-|\s|:)\d{1,4}/g);dateArr.yy=rs[0]-_self.minY;dateArr.mm=rs[1].replace(/-/g,"")-1;dateArr.dd=rs[2].replace(/-/g,"")-1;dateArr.hh=parseInt(rs[3].replace(/\s0?/g,""));dateArr.mi=parseInt(rs[4].replace(/:0?/g,""));}else{dateArr.yy=dateArr.yy-_self.minY;}
_self.gearDate.querySelector(".date_yy").setAttribute("val",dateArr.yy);_self.gearDate.querySelector(".date_mm").setAttribute("val",dateArr.mm);_self.gearDate.querySelector(".date_dd").setAttribute("val",dateArr.dd);setDateGearTooth();_self.gearDate.querySelector(".time_hh").setAttribute("val",dateArr.hh);_self.gearDate.querySelector(".time_mm").setAttribute("val",dateArr.mi);setTimeGearTooth();}
function popupTime(e){_self.gearDate=document.createElement("div");_self.gearDate.className="gearDate";_self.gearDate.innerHTML='<div class="date_ctrl slideInUp">'+
'<div class="date_btn_box">'+
'<div class="date_btn lcalendar_cancel">取消</div>'+
'<div class="date_btn lcalendar_finish">确定</div>'+
'</div>'+
'<div class="date_roll_mask">'+
'<div class="time_roll">'+
'<div>'+
'<div class="gear time_hh" data-datetype="time_hh"></div>'+
'<div class="date_grid">'+
'<div>时</div>'+
'</div>'+
'</div>'+
'<div>'+
'<div class="gear time_mm" data-datetype="time_mm"></div>'+
'<div class="date_grid">'+
'<div>分</div>'+
'</div>'+
'</div>'+
'</div>'+
'</div>'+
'</div>';document.body.appendChild(_self.gearDate);timeCtrlInit();var lcalendar_cancel=_self.gearDate.querySelector(".lcalendar_cancel");lcalendar_cancel.addEventListener('touchstart',closeMobileCalendar);var lcalendar_finish=_self.gearDate.querySelector(".lcalendar_finish");lcalendar_finish.addEventListener('touchstart',finishMobileTime);var time_hh=_self.gearDate.querySelector(".time_hh");var time_mm=_self.gearDate.querySelector(".time_mm");time_hh.addEventListener('touchstart',gearTouchStart);time_mm.addEventListener('touchstart',gearTouchStart);time_hh.addEventListener('touchmove',gearTouchMove);time_mm.addEventListener('touchmove',gearTouchMove);time_hh.addEventListener('touchend',gearTouchEnd);time_mm.addEventListener('touchend',gearTouchEnd);}
function timeCtrlInit(){var d=new Date();var e={hh:d.getHours(),mm:d.getMinutes()};if(/^\d{2}:\d{2}$/.test(_self.trigger.value)){rs=_self.trigger.value.match(/(^|:)\d{2}/g);e.hh=parseInt(rs[0].replace(/^0?/g,""));e.mm=parseInt(rs[1].replace(/:0?/g,""))}
_self.gearDate.querySelector(".time_hh").setAttribute("val",e.hh);_self.gearDate.querySelector(".time_mm").setAttribute("val",e.mm);setTimeGearTooth();}
function setDateGearTooth(){var passY=_self.maxY-_self.minY+1;var date_yy=_self.gearDate.querySelector(".date_yy");var itemStr="";if(date_yy&&date_yy.getAttribute("val")){var yyVal=parseInt(date_yy.getAttribute("val"));for(var p=0;p<=passY-1;p++){itemStr+="<div class='tooth'>"+(_self.minY+p)+"</div>";}
date_yy.innerHTML=itemStr;var top=Math.floor(parseFloat(date_yy.getAttribute('top')));if(!isNaN(top)){top%2==0?(top=top):(top=top+1);top>8&&(top=8);var minTop=8-(passY-1)*2;top<minTop&&(top=minTop);date_yy.style["-webkit-transform"]='translate3d(0,'+top+'em,0)';date_yy.setAttribute('top',top+'em');yyVal=Math.abs(top-8)/2;date_yy.setAttribute("val",yyVal);}else{date_yy.style["-webkit-transform"]='translate3d(0,'+(8-yyVal*2)+'em,0)';date_yy.setAttribute('top',8-yyVal*2+'em');}}else{return;}
var date_mm=_self.gearDate.querySelector(".date_mm");if(date_mm&&date_mm.getAttribute("val")){itemStr="";var mmVal=parseInt(date_mm.getAttribute("val"));var maxM=11;var minM=0;if(yyVal==passY-1){maxM=_self.maxM-1;}
if(yyVal==0){minM=_self.minM-1;}
for(var p=0;p<maxM-minM+1;p++){itemStr+="<div class='tooth'>"+(minM+p+1)+"</div>";}
date_mm.innerHTML=itemStr;if(mmVal>maxM){mmVal=maxM;date_mm.setAttribute("val",mmVal);}else if(mmVal<minM){mmVal=maxM;date_mm.setAttribute("val",mmVal);}
date_mm.style["-webkit-transform"]='translate3d(0,'+(8-(mmVal-minM)*2)+'em,0)';date_mm.setAttribute('top',8-(mmVal-minM)*2+'em');}else{return;}
var date_dd=_self.gearDate.querySelector(".date_dd");if(date_dd&&date_dd.getAttribute("val")){itemStr="";var ddVal=parseInt(date_dd.getAttribute("val"));var maxMonthDays=calcDays(yyVal,mmVal);var maxD=maxMonthDays-1;var minD=0;if(yyVal==passY-1&&_self.maxM==mmVal+1){maxD=_self.maxD-1;}
if(yyVal==0&&_self.minM==mmVal+1){minD=_self.minD-1;}
for(var p=0;p<maxD-minD+1;p++){itemStr+="<div class='tooth'>"+(minD+p+1)+"</div>";}
date_dd.innerHTML=itemStr;if(ddVal>maxD){ddVal=maxD;date_dd.setAttribute("val",ddVal);}else if(ddVal<minD){ddVal=minD;date_dd.setAttribute("val",ddVal);}
date_dd.style["-webkit-transform"]='translate3d(0,'+(8-(ddVal-minD)*2)+'em,0)';date_dd.setAttribute('top',8-(ddVal-minD)*2+'em');}else{return;}}
function setTimeGearTooth(){var time_hh=_self.gearDate.querySelector(".time_hh");if(time_hh&&time_hh.getAttribute("val")){var i="";var hhVal=parseInt(time_hh.getAttribute("val"));for(var g=0;g<=23;g++){i+="<div class='tooth'>"+g+"</div>";}
time_hh.innerHTML=i;time_hh.style["-webkit-transform"]='translate3d(0,'+(8-hhVal*2)+'em,0)';time_hh.setAttribute('top',8-hhVal*2+'em');}else{return}
var time_mm=_self.gearDate.querySelector(".time_mm");if(time_mm&&time_mm.getAttribute("val")){var i="";var mmVal=parseInt(time_mm.getAttribute("val"));for(var g=0;g<=59;g++){i+="<div class='tooth'>"+g+"</div>";}
time_mm.innerHTML=i;time_mm.style["-webkit-transform"]='translate3d(0,'+(8-mmVal*2)+'em,0)';time_mm.setAttribute('top',8-mmVal*2+'em');}else{return}}
function calcDays(year,month){if(month==1){year+=_self.minY;if((year%4==0&&year%100!=0)||(year%400==0&&year%4000!=0)){return 29;}else{return 28;}}else{if(month==3||month==5||month==8||month==10){return 30;}else{return 31;}}}
function gearTouchStart(e){e.preventDefault();var target=e.target;while(true){if(!target.classList.contains("gear")){target=target.parentElement;}else{break}}
clearInterval(target["int_"+target.id]);target["old_"+target.id]=e.targetTouches[0].screenY;target["o_t_"+target.id]=(new Date()).getTime();var top=target.getAttribute('top');if(top){target["o_d_"+target.id]=parseFloat(top.replace(/em/g,""));}else{target["o_d_"+target.id]=0;}
target.style.webkitTransitionDuration=target.style.transitionDuration='0ms';}
function gearTouchMove(e){e.preventDefault();var target=e.target;while(true){if(!target.classList.contains("gear")){target=target.parentElement;}else{break}}
target["new_"+target.id]=e.targetTouches[0].screenY;target["n_t_"+target.id]=(new Date()).getTime();var f=(target["new_"+target.id]-target["old_"+target.id])*30/window.innerHeight;target["pos_"+target.id]=target["o_d_"+target.id]+f;target.style["-webkit-transform"]='translate3d(0,'+target["pos_"+target.id]+'em,0)';target.setAttribute('top',target["pos_"+target.id]+'em');if(e.targetTouches[0].screenY<1){gearTouchEnd(e);};}
function gearTouchEnd(e){e.preventDefault();var target=e.target;while(true){if(!target.classList.contains("gear")){target=target.parentElement;}else{break;}}
var flag=(target["new_"+target.id]-target["old_"+target.id])/(target["n_t_"+target.id]-target["o_t_"+target.id]);if(Math.abs(flag)<=0.2){target["spd_"+target.id]=(flag<0?-0.08:0.08);}else{if(Math.abs(flag)<=0.5){target["spd_"+target.id]=(flag<0?-0.16:0.16);}else{target["spd_"+target.id]=flag/2;}}
if(!target["pos_"+target.id]){target["pos_"+target.id]=0;}
rollGear(target);}
function rollGear(target){var d=0;var stopGear=false;function setDuration(){target.style.webkitTransitionDuration=target.style.transitionDuration='200ms';stopGear=true;}
var passY=_self.maxY-_self.minY+1;clearInterval(target["int_"+target.id]);target["int_"+target.id]=setInterval(function(){var pos=target["pos_"+target.id];var speed=target["spd_"+target.id]*Math.exp(-0.03*d);pos+=speed;if(Math.abs(speed)>0.1){}else{var b=Math.round(pos/2)*2;pos=b;setDuration();}
if(pos>8){pos=8;setDuration();}
switch(target.dataset.datetype){case "date_yy":var minTop=8-(passY-1)*2;if(pos<minTop){pos=minTop;setDuration();}
if(stopGear){var gearVal=Math.abs(pos-8)/2;setGear(target,gearVal);clearInterval(target["int_"+target.id]);}
break;case "date_mm":var date_yy=_self.gearDate.querySelector(".date_yy");var yyVal=parseInt(date_yy.getAttribute("val"));var maxM=11;var minM=0;if(yyVal==passY-1){maxM=_self.maxM-1;}
if(yyVal==0){minM=_self.minM-1;}
var minTop=8-(maxM-minM)*2;if(pos<minTop){pos=minTop;setDuration();}
if(stopGear){var gearVal=Math.abs(pos-8)/2+minM;setGear(target,gearVal);clearInterval(target["int_"+target.id]);}
break;case "date_dd":var date_yy=_self.gearDate.querySelector(".date_yy");var date_mm=_self.gearDate.querySelector(".date_mm");var yyVal=parseInt(date_yy.getAttribute("val"));var mmVal=parseInt(date_mm.getAttribute("val"));var maxMonthDays=calcDays(yyVal,mmVal);var maxD=maxMonthDays-1;var minD=0;if(yyVal==passY-1&&_self.maxM==mmVal+1){maxD=_self.maxD-1;}
if(yyVal==0&&_self.minM==mmVal+1){minD=_self.minD-1;}
var minTop=8-(maxD-minD)*2;if(pos<minTop){pos=minTop;setDuration();}
if(stopGear){var gearVal=Math.abs(pos-8)/2+minD;setGear(target,gearVal);clearInterval(target["int_"+target.id]);}
break;case "time_hh":if(pos<-38){pos=-38;setDuration();}
if(stopGear){var gearVal=Math.abs(pos-8)/2;setGear(target,gearVal);clearInterval(target["int_"+target.id]);}
break;case "time_mm":if(pos<-110){pos=-110;setDuration();}
if(stopGear){var gearVal=Math.abs(pos-8)/2;setGear(target,gearVal);clearInterval(target["int_"+target.id]);}
break;default:}
target["pos_"+target.id]=pos;target.style["-webkit-transform"]='translate3d(0,'+pos+'em,0)';target.setAttribute('top',pos+'em');d++;},30);}
function setGear(target,val){val=Math.round(val);target.setAttribute("val",val);if(/date/.test(target.dataset.datetype)){setDateGearTooth();}else{setTimeGearTooth();}}
function closeMobileCalendar(e){e.preventDefault();var evt;try{evt=new CustomEvent('input');}catch(e){evt=document.createEvent('Event');evt.initEvent('input',true,true);}
_self.trigger.dispatchEvent(evt);document.body.removeChild(_self.gearDate);_self.gearDate=null;}
function finishMobileDate(e){var passY=_self.maxY-_self.minY+1;var date_yy=parseInt(Math.round(_self.gearDate.querySelector(".date_yy").getAttribute("val")));var date_mm=parseInt(Math.round(_self.gearDate.querySelector(".date_mm").getAttribute("val")))+1;date_mm=date_mm>9?date_mm:'0'+date_mm;var date_dd=parseInt(Math.round(_self.gearDate.querySelector(".date_dd").getAttribute("val")))+1;date_dd=date_dd>9?date_dd:'0'+date_dd;_self.trigger.value=(date_yy%passY+_self.minY)+"-"+date_mm+"-"+date_dd;closeMobileCalendar(e);}
function finishMobileYM(e){var passY=_self.maxY-_self.minY+1;var date_yy=parseInt(Math.round(_self.gearDate.querySelector(".date_yy").getAttribute("val")));var date_mm=parseInt(Math.round(_self.gearDate.querySelector(".date_mm").getAttribute("val")))+1;date_mm=date_mm>9?date_mm:'0'+date_mm;_self.trigger.value=(date_yy%passY+_self.minY)+"-"+date_mm;closeMobileCalendar(e);}
function finishMobileDateTime(e){var passY=_self.maxY-_self.minY+1;var date_yy=parseInt(Math.round(_self.gearDate.querySelector(".date_yy").getAttribute("val")));var date_mm=parseInt(Math.round(_self.gearDate.querySelector(".date_mm").getAttribute("val")))+1;date_mm=date_mm>9?date_mm:'0'+date_mm;var date_dd=parseInt(Math.round(_self.gearDate.querySelector(".date_dd").getAttribute("val")))+1;date_dd=date_dd>9?date_dd:'0'+date_dd;var time_hh=parseInt(Math.round(_self.gearDate.querySelector(".time_hh").getAttribute("val")));time_hh=time_hh>9?time_hh:'0'+time_hh;var time_mm=parseInt(Math.round(_self.gearDate.querySelector(".time_mm").getAttribute("val")));time_mm=time_mm>9?time_mm:'0'+time_mm;_self.trigger.value=(date_yy%passY+_self.minY)+"-"+date_mm+"-"+date_dd+" "+(time_hh.length<2?"0":"")+time_hh+(time_mm.length<2?":0":":")+time_mm;closeMobileCalendar(e);}
function finishMobileTime(e){var time_hh=parseInt(Math.round(_self.gearDate.querySelector(".time_hh").getAttribute("val")));time_hh=time_hh>9?time_hh:'0'+time_hh;var time_mm=parseInt(Math.round(_self.gearDate.querySelector(".time_mm").getAttribute("val")));time_mm=time_mm>9?time_mm:'0'+time_mm;_self.trigger.value=(time_hh.length<2?"0":"")+time_hh+(time_mm.length<2?":0":":")+time_mm;closeMobileCalendar(e);}
_self.trigger.addEventListener('click',{"ym":popupYM,"date":popupDate,"datetime":popupDateTime,"time":popupTime}[type]);}}
return MobileCalendar;})()
\ No newline at end of file
...@@ -10,7 +10,14 @@ $(function () { ...@@ -10,7 +10,14 @@ $(function () {
name: '', name: '',
babyGender: '', babyGender: '',
babyBirth: '' babyBirth: ''
} };
var calendar = new LCalendar();
calendar.init({
'trigger': '#babyBirth', //标签id
'type': 'date', //date 调出日期选择 datetime 调出日期时间选择 time 调出时间选择 ym 调出年月选择,
'minDate': (new Date().getFullYear() - 19) + '-' + (new Date().getMonth() + 1) + '-' + (new Date().getDate() + 1), //最小日期
'maxDate': (new Date().getFullYear()) + '-' + (new Date().getMonth() + 1) + '-' + new Date().getDate() //最大日期
});
const REG_CODE = /^(1)\d{10}$/; const REG_CODE = /^(1)\d{10}$/;
const REG_NAME = /(^[\u4e00-\u9fa5]{1}[\u4e00-\u9fa5\.·。]{0,48}[\u4e00-\u9fa5]{1}$)|(^[a-zA-Z]{1}[a-zA-Z\s]{0,48}[a-zA-Z]{1}$)/; const REG_NAME = /(^[\u4e00-\u9fa5]{1}[\u4e00-\u9fa5\.·。]{0,48}[\u4e00-\u9fa5]{1}$)|(^[a-zA-Z]{1}[a-zA-Z\s]{0,48}[a-zA-Z]{1}$)/;
// $("#phone,#name,#code").blur(function () { // $("#phone,#name,#code").blur(function () {
...@@ -206,14 +213,38 @@ $(function () { ...@@ -206,14 +213,38 @@ $(function () {
babyGender(); babyGender();
function babyGender() { function babyGender() {
$('.babyGender').click(function (event) { $('.babyGender').click(function (event) {
// console.log(event) param.babyGender = event.currentTarget.dataset.attr;
// param.babyGender = event.currentTarget.dataset.attr; $(this).addClass("actived").siblings().removeClass("actived");
// event.currentTarget
$('.babyGender').addClass()
}) })
} }
// 设定宝宝出生日期的最大日期
setMaxDate();
function setMaxDate() {
//得到当前时间
var date_now = new Date();
//得到当前年份
var year = date_now.getFullYear();
//得到当前月份
//注:
// 1:js中获取Date中的month时,会比当前月份少一个月,所以这里需要先加一
// 2: 判断当前月份是否小于10,如果小于,那么就在月份的前面加一个 '0' , 如果大于,就显示当前月份
var month = date_now.getMonth() + 1 < 10 ? "0" + (date_now.getMonth() + 1) : (date_now.getMonth() + 1);
//得到当前日子(多少号)
var date = date_now.getDate() < 10 ? "0" + date_now.getDate() : date_now.getDate();
//设置input标签的max属性
$("#babyBirth").attr("max", year + "-" + month + "-" + date);
}
// 关闭弹窗
closeDialog();
function closeDialog() {
$('#closeBtn').click(function () {
$('.dialog').hide();
})
}
goMeasurement(); goMeasurement();
function goMeasurement() { function goMeasurement() {
...@@ -293,10 +324,14 @@ $(function () { ...@@ -293,10 +324,14 @@ $(function () {
"X-Authorization": token "X-Authorization": token
}, },
success: function (res) { success: function (res) {
if (res['commonResult']) { if (res['success']) {
$('.dialog').show();
} else { } else {
console.log('错误') layer.open({
content: res.message,
skin: 'msg',
time: 3
})
} }
} }
}) })
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment