哎,说多了都是泪;

引入相关JS文件

 <script type="text/javascript" src="js/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="js/iscroll.js"></script>

样式

 /*日期选择*/
.date{
position: fixed;
top: 0;
width: 100%;
height: 100%;
display: none;
background-color:rgba(0,0,0,.3);
}
.date .date-piker{
width:750px;
background-color:#fff;
font-size:26px;
position:absolute;
bottom:0
}
.date .date-piker .tit{
height:80px;
line-height:80px;
background-color:#f4f4f4;
color:#474747;
padding:0 26px;
text-align:center
}
.date .date-piker .tit a{
color:#ff6315;
float:left
}
.date .date-piker .tit a:last-child{
float:right
}
.date .time-box{
height: 420px;
overflow: hidden;
position: relative;
width: 100%;
padding:0 45px
}
.date .time-choose{
height: 70px;
border-top:1px solid #efefef;
border-bottom:1px solid #efefef;
position: absolute;
top: 140px;
left:-90px;
width: 100%;
background-color:#fff
}
.date .time-01, .time-02, .time-03{
position:absolute;
z-index: 3;
height:420px;
overflow:hidden
}
.date .time-02{
left:240px
}
.date .time-03{
left:480px
}
.date .time-box li{
height:70px;
line-height:70px;
color:#474747;
text-align: center;
font-family:Helvetica;
width: 220px
}

HTML代码实现

  <div class="date">
<div class="date-piker">
<div class="tit"><a id="kidding">取消</a><span>保养时间</span><a id="sure">确定</a></div>
<div class="time-box">
<div class="time-choose"></div>
<div class="time-01" id="month">
<div>
<ul>
<li></li>
<li></li> <li>4月</li>
<li>5月</li>
<li>6月</li>
<li>7月</li> <li></li>
<li></li>
<li></li>
</ul>
</div>
</div>
<div class="time-02" id="date">
<div>
<ul>
<li></li>
<li></li>
<li>1日</li>
<li>2日</li>
<li>3日</li>
<li>4日</li>
<li>5日</li> <li></li>
<li></li>
</ul>
</div>
</div>
<div class="time-03" id="time">
<div>
<ul>
<li></li>
<li></li> <li>10:00</li>
<li>15:00</li>
<li>16:00</li>
<li>17:00</li>
<li>18:00</li> <li></li>
<li></li>
<li></li>
</ul>
</div>
</div>
</div>
</div>
</div>

JS效果添加

 /*日期选择*/
/*此处存在问题 这个时间上 关于月份 每个天数都不一样 需要动态生成*/
$('.date_sure').click(function(){
$('.date').show();
//滚动效果
scrolling(); //确认结果
$('#sure').click(function(){
if(getContent("#month")){
//获取各个div中ul li中选中的内容
$('.date_sure').html(getContent("#month") +getContent("#date")+' '+ getContent("#time"));
$('.date').hide();
}
});
$('#kidding').click(function(){
$('.date').hide();
});
var myScroll; function scrolling(){
myScroll = new IScroll('#date', {
scrollY: true,
momentum: false,
snap: 'li'
});
myScroll = new IScroll('#time', {
scrollY: true,
momentum: false,
snap: 'li'
});
myScroll = new IScroll('#month', {
scrollY: true,
momentum: false,
snap: 'li'
}); } function getContent(ele){
//找到里层div
var $content = $(ele).find('div');
//获取一个li的高度
var _height=$(ele).find('li').height();
//为内层div添加transform移动效果
var tran = $content.css('transform');
var topArray=[];
//将获取到的内容 变成数组 最后一个为移动距离top
topArray=tran.split(',');
var top=Math.floor(parseFloat(topArray[5]));
//获取到移动的个数 减去空的两个li
var num=top/_height-2;
//返回对应选择出来的li的内容
return $(ele+" li").eq(-num).text();
}
});

完成了 这个日期的选择

移动端iscroll实现日期选择的更多相关文章

  1. 【转载】jQuery手机移动端触屏日历日期选择

    文章转载自 科e互联 http://www.internetke.com/ 原文链接:http://www.internetke.com/effects/css3/2015/0120/1222.htm ...

  2. 纯原生js移动端日期选择插件

    最近在项目上需要使用日期选择插件,由于是移动端的项目,对请求资源还是蛮节约的,可是百度上一搜,诶~全是基于jquery.zepto的,本来类库就很大,特别像mobiscroll这种样式文件一大堆又丑又 ...

  3. jquery mobiscroll移动端日期选择控件(无乱码)

    jquery mobiscroll移动端日期选择控件(无乱码) <pre><!DOCTYPE html><html lang="en">< ...

  4. 用c/c++混合编程方式为ios/android实现一个自绘日期选择控件(一)

    本文为原创,如有转载,请注明出处:http://www.cnblogs.com/jackybu 前言 章节: 1.需求描述以及c/c++实现日期和月历的基本操作 2.ios实现自绘日期选择控件 3.a ...

  5. 移动端material风格日期时间选择器

    原文 好多时候在移动端需要一个的日期选择器,由于在应用上有可能应用各种框架库(Vue.js, React.js, zepto.js等):所以说一个无依赖的,这样易于上层进行封装.直接开门见山,先来张动 ...

  6. webapp中的日期选择

    你是否在开发webapp时,选择用哪种第三方日期选择控件绞尽脑汁? 其实不用那么麻烦,现在移动端都是WebKit内核,支持HTML5,其实只要弱弱的将input中将type="date&qu ...

  7. 移动设备日期选择插件(基于JQUERY)

    上周花了2个小时写的一个日期选择插件,比较适合移动端的设备.先看个效果图吧.如果刚好是你需要的就往下吧,不需要的也可以继续..... 其实网络上已经有的了类似的成熟插件,比如基于mobiscroll, ...

  8. 推荐三款日期选择插件(My97DatePicker+jquery.datepicker+Mobiscroll)

    1.My97DatePicker 纯原生JS,专注于PC端,支持IE6+:页面上只需要引入WdatePicker.js文件,但是My97DatePicker整个目录是一个整体,最好不要破坏里面的目录结 ...

  9. vue 移动端轻量日期组件不依赖第三方库

    Vue版移动端日期选择组件 1.优点:不需要依赖其他第三方库,灵活可配置: 不需要依赖第三方组件的vue日期移动端组件  小轮子 轻量可复用:  https://github.com/BeckReed ...

随机推荐

  1. mariadb:分区自动创建与删除

    参考文章:https://blog.csdn.net/xlxxcc/article/details/52486426 1.以日自动创建与删除分区 调用示例:CALL proc_day_partitio ...

  2. Jmeter之模拟文件上传、下载接口操作

    上周群里有位同学,问我用jmeter怎么上传文件?因好久没用jmeter了,顺便自己也复习下,现整理出来和大家分享 一.准备工作: 上传接口一个(自行开发解决了) 下载接口 ps:没有困难创造困难也要 ...

  3. [PHP]session的一些要点

    一.session_start([array $options=array()]) 1.只能在输出http头前启动此函数,因为如果需要改写sessid的键和值,需要在http报文头发出前就开始定义了: ...

  4. 执行原生SQL语句的方式

    原生sql语句 cursor方法:from api.models import *from django.db import connection,connectionscursor=connecti ...

  5. vue v-time指令封装(接口返回时间戳 在到日期转换)

    // 全局时间戳转换指令注册Vue.directive('time',{ bind: function (el,binding) { let getTime = new Date(binding.va ...

  6. 用Python优雅的处理日志

    我们可以通过以下3种方式可以很优雅配置logging日志: 1)使用Python代码显式的创建loggers, handlers和formatters并分别调用它们的配置函数: 2)创建一个日志配置文 ...

  7. 解决Javascript中$(window).resize()多次执行(转)

    https://www.cnblogs.com/shuilangyizu/p/6816756.html 有些时候,我们需要在浏览器窗口发生变化的时候,动态的执行一些操作,比如做自适应页面时的适配.这个 ...

  8. springboot第一个项目【创建】

    1.new project,不勾选create from archetype,直接选择 2.next下一步 在Maven依赖管理中,唯一标识一个依赖项是由该依赖项的三个属性构成的,分别是groupId ...

  9. ios 清除缓存文件

    获取缓存文件的大小 由于缓存文件存在沙箱中,我们可以通过NSFileManager API来实现对缓存文件大小的计算. 计算单个文件大小 +(float)fileSizeAtPath:(NSStrin ...

  10. IntelliJ IDEA使用教程 (总目录篇)

    注:本文来源于<    IntelliJ IDEA使用教程 (总目录篇)  > IntelliJ IDEA使用教程 (总目录篇) 硬件要求 IntelliJ IDEA 的硬件要求 安装包云 ...