自已开发完美的触摸屏网页版仿app弹窗型滚动列表选择器/日期选择器

手机端网页版app在使用下拉列表时,传统的下拉列表使用起来体验非常不好,一般做的稍好一点的交互功能界面都不会直接使用下拉列表,所以app的原生下拉列表都是弹窗列表选择,网页型app从使用体验上来当然也应该做成那样,前段时间在开发网页版app时就遇到这种需求,不仅是日期选择器,数据列表、变量列表选择等等下拉列表型需求都需要,网上找来找去只找到一款比较好的mobiscroll,不过下载比较麻烦,感觉比较奇怪的是jquery.mobile、jeasyui.mobile都没有提供这种控件,不知道为什么?虽然我不是专做前端开发,不过几乎全能型的我觉的不难开发吧,在家熬了一夜试了几种方法终于找到一种几乎完美的方法!在后来的使用中不断完善,现在公开提供给广大程序员。先看看效果图:

 

 

由于这控件的滚动是使用div原生滚动方法,触摸屏使用时可以有惯性滚动效果,也实现了鼠标可以操作,不过没有实现惯性滚动效果。由于此控件主要是面向触摸屏的,所以嘛触摸屏完美就好了,我也懒的弄鼠标版的特效了。此控件已封装成jquery插件,没有边框,100%宽,使用很方便,比如套入弹窗后就是上图效果。

代码使用方法如下:

          $("#scrollbox").EasyScrollBox({fontSize: 32,fontFamily: '',color: '#000',lineHeight: 1.5,spaceRows: 2,value: '4',data: data1,textFiled: 'txt',valueFiled: 'id',onSelected: function (index, value) {$("#Text1").val(value);}});

使用弹窗完整的使用方法代码如下,效果就是上图的样子:

<!-- ui-dialog --><div id="dialog" class="easyui-dialog" style="padding:20px 6px;width:80%;" data-options="inline:true,modal:true,closed:true,title:'设置数值'"><div id="scrollbox"></div><div class="dialog-button"><a href="javascript:void(0)" class="easyui-linkbutton" style="width:100%;height:35px" οnclick="$('#dialog').dialog('close')">确 定</a></div>
</div><script type="text/javascript">$(function () {//对象型数据var data = [];for (var i = 0; i < 100; i++) {var m = {};m.id = i;m.txt = "数据" + i;data.push(m);}$("#dialog").dialog();// Link to open the dialog$("#dialog-link").click(function (event) {$("#dialog").dialog("open").dialog('center');//重新赋值$("#scrollbox").EasyScrollBox({fontSize: 32,fontFamily: '',color: '#000',lineHeight: 1.5,spaceRows: 2,value: '4',data: data,textFiled: 'txt',valueFiled: 'id',onSelected: function (index, value) {$("#Text1").val(value.id);}});event.preventDefault();});});</script> 

  

也可以这么用:

 

          //字符串数据var data1 = [];for (var i = 0; i < 100; i++) {data1.push(i);}$("#scrollbox").EasyScrollBox({fontSize: 32,fontFamily: '',color: '#000',lineHeight: 1.5,spaceRows: 2,value: '4',data: data1,onSelected: function (index, value) {$("#Text1").val(value);}});$("#dialog-link1").click(function (event) {$("#dialog").dialog("open").dialog('center');event.preventDefault();});

 如果想要一点三维效果,直接加样式即可:

#cover_top_EasyScrollBox{ 
background: -ms-linear-gradient(top, #000000,  #ccc);        /* IE 10 */
background:-moz-linear-gradient(top,#000000,#ccc);/*火狐*/ 
background:-webkit-gradient(linear, 0% 0%, 0% 100%,from(#000000), to(#ccc));/*谷歌*/ 
background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#000000), to(#ccc));      /* Safari 4-5, Chrome 1-9*/
background: -webkit-linear-gradient(top, #000000, #ccc);   /*Safari5.1 Chrome 10+*/
background: -o-linear-gradient(top, #000000, #ccc);  /*Opera 11.10+*/
} 
#cover_bottom_EasyScrollBox{ 
background: -ms-linear-gradient(top, #ccc,  #000000);        /* IE 10 */
background:-moz-linear-gradient(top,#ccc,#0000ff);/*火狐*/ 
background:-webkit-gradient(linear, 0% 0%, 0% 100%,from(#ccc), to(#000000));/*谷歌*/ 
background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#ccc), to(#000000));      /* Safari 4-5, Chrome 1-9*/
background: -webkit-linear-gradient(top, #ccc, #000000);   /*Safari5.1 Chrome 10+*/
background: -o-linear-gradient(top, #ccc, #000000);  /*Opera 11.10+*/
} 

  

 

使用非常简单,必须引用的框架jquery.min.js,我的框架控件:EasyScrollBox.js。

 演示例子全代码文件:

 http://files.cnblogs.com/files/easywebfactory/EasyScrollBox_demo.rar

转载于:https://www.cnblogs.com/easywebfactory/p/6012111.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/457055.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

*args, **kwargs的用法

python 中参数*args, **kwargs def foo(*args, **kwargs): print args , args print kwargs , kwargs print ---------------------------------------if __name__ __main__: foo(1,2,3,4) foo(a1,b2,c3) foo(1,2,3,4, a1,b2,c3) foo(a, 1, None, a1, b2, c3)输出结果如下&…

一个 js 中值传递和引用传递的坑。

今天在调试代码时遇到一个问题&#xff0c;刚开始想不明白&#xff0c;然后分析了一下后&#xff0c;才知道其中的问题&#xff0c;这也是一个基础的问题&#xff0c;&#xff08;所以基础是很重要的&#xff09; 代码如下&#xff1a; var a 3; a a * 2; console.log(a); //…

linux运维适合女生么,女生真的不适合做IT行业吗?Linux运维适合女生学习吗?

在很多人的脑海中都是女生不适合做IT&#xff0c;IT行业不适合女性。可能传统的思想中&#xff0c;女生只适合做文职工作&#xff0c;比如说幼师、公务员、会计等&#xff0c;就因为这样的思想也让IT行业男女出现了失衡的情况&#xff0c;那么作为女生真的不适合做IT行业吗?Li…

关于在用异步消息处理机制使用Message.Obtain()方法(而非New Message)获得一个Message对象的好处

类概述 定义一个包含任意类型的描述数据对象&#xff0c;此对象可以发送给Handler。对象包含两个额外的int字段和一个额外的对象字段&#xff0c;这样可以使得在很多情况下不用做分配工作。 尽管Message的构造器是公开的&#xff0c;但是获取Message对象的最好方法是调用Messag…

python编程中的if __name__ == 'main': 的作用和原理

大多数编排得好一点的脚本或者程序里面都有这段if __name__ main: &#xff0c;虽然一直知道他的作用&#xff0c;但是一直比较模糊&#xff0c;收集资料详细理解之后与打架分享。 1、这段代码的功能 一个python的文件有两种使用的方法&#xff0c;第一是直接作为脚本执行&…

vim 配置

vim包下载 https://github.com/spf13/spf13-vim 安装教程 http://blog.csdn.net/u011729865/article/details/49210841 https://www.zhihu.com/question/20151659转载于:https://www.cnblogs.com/aituming/p/6013279.html

自己简单封装的自己项目需要的http请求

2019独角兽企业重金招聘Python工程师标准>>> package www.tydic.com.util;import java.io.ByteArrayOutputStream; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.Http…

excel导入linux乱码怎么解决方法,,请大家都来看下,Excel导入有乱码?原因出在哪里?应该怎么解决?...

老师&#xff0c;感谢你再次的回答。我按照您的方法操作&#xff0c;转换utf-8另外为CSV格式&#xff0c;然后这个CSV格式在Notepad 编辑器中打开后&#xff0c;没有乱码&#xff0c;μ 符号(希腊字符)正确显示。我想导入文件已经准备完毕&#xff0c;当我导入的时候&#xff0…

Oracle 正则表达式

一. 正则表达式简介: 正则表达式&#xff0c;就是以某种模式来匹配一类字符串。一旦概括了某类字符串&#xff0c;那么正则表达式即可用于针对字符串的各种相关操作。例如&#xff0c;判断匹配性&#xff0c;进行字符串的重新组合等。正则表达式提供了字符串处理的快捷方式。…

python编程中的if __name__ == 'main': 的作用和原理[2]

这个问题来自于知乎用户的提问&#xff0c;当时看到这个问题&#xff0c;我只是做了下简单的回答。后来我发现&#xff0c;对于很多人来说&#xff0c;更准确的说应该是大部分的 Python 初学者&#xff0c;对这个问题理解的不是很深刻。所以这里我来做下总结&#xff0c;并试图…

Java基础中按值传递和引用传递详解

下面是我在网上看到的一个帖子&#xff0c;解释的感觉挺全面&#xff0c;就转过来&#xff0c;以供以后学习参考&#xff1a; 1&#xff1a;按值传递是什么 指的是在方法调用时&#xff0c;传递的参数是按值的拷贝传递。示例如下&#xff1a; [java] view plaincopy public cla…

【Foreign】采蘑菇 [点分治]

采蘑菇 Time Limit: 20 Sec Memory Limit: 256 MBDescription Input Output Sample Input 51 2 3 2 31 21 32 42 5Sample Output 10912911HINT Main idea 询问从以每个点为起始点时&#xff0c;各条路径上的颜色种类的和。 Solution 我们看到题目&#xff0c;立马想到了O(n^2)…

c语言迷宫游戏怎么存放坐标,求解迷宫问题(c语言,很详细哦

《求解迷宫问题(c语言,很详细哦》由会员分享&#xff0c;可在线阅读&#xff0c;更多相关《求解迷宫问题(c语言,很详细哦(5页珍藏版)》请在人人文库网上搜索。1、求迷宫问题就是求出从入口到出口的路径。在求解时 , 通常用的是 “穷举求解”的方法 ,即从入口出发 ,顺某一方向向…

模块概述

概述 目前代码比较少&#xff0c;写在一个文件中还体现不出什么缺点&#xff0c;但是随着代码量越来越多&#xff0c; 代码就越来越难以维护 为了解决难以维护的问题&#xff0c;我们把很多相似功能的函数分组&#xff0c;分别放到不同的文件中取。这样每个文件所包含的内容相…

【MySQL】PREPARE 的应用

简单的用set或者declare语句定义变量&#xff0c;然后直接作为sql的表名是不行的&#xff0c;mysql会把变量名当作表名。在其他的sql数据库中也是如此&#xff0c;mssql的解决方法是将整条sql语句作为变量&#xff0c;其中穿插变量作为表名&#xff0c;然后用sp_executesql调用…

简历要求中“ 扎实的JAVA基础”的学习方法

最近在头条看到一篇关于Java基础学习的文章&#xff0c;感觉写的很不错&#xff0c;分享一下&#xff0c;希望对大家有帮助 什么东西算作Java基础&#xff1f;学到什么程度才算扎实&#xff1f; 这些问题的答案&#xff0c;LZ已经用文言文告诉你了&#xff0c;咳咳&#xff0c;…

C++11 tuple的使用

多少分转载于:https://www.cnblogs.com/DswCnblog/p/6524832.html

c语言程序设计贪吃蛇需求分析,C语言编程新手入门基础进阶学习!贪吃蛇小游戏演示和说明...

C语言是面向过程的&#xff0c;而C&#xff0b;&#xff0b;是面向对象的设计贪吃蛇游戏的主要目的是让大家夯实C语言基础&#xff0c;训练编程思维&#xff0c;培养解决问题的思路&#xff0c;领略多姿多彩的C语言。游戏开始后&#xff0c;会在中间位置出现一条只有三个节点的…

解决bash: mysql: command not found 的方法【linux mysql命令 】

linux下&#xff0c;在mysql正常运行的情况下&#xff0c;输入mysql提示&#xff1a; mysql command not found 遇上-bash: mysql: command not found的情况别着急&#xff0c;这个是因为/usr/local/bin目录下缺失mysql导致&#xff0c;只需要以下方法即可以解决&#xff1a; …

堆和栈的区别(经典干货)

一、预备知识—程序的内存分配 一个由C/C编译的程序占用的内存分为以下几个部分 1、栈区&#xff08;stack&#xff09;— 由编译器自动分配释放 &#xff0c;存放函数的参数值&#xff0c;局部变量的值等。其 操作方式类似于 数据结构 中的栈。 2、堆区&#xff08;he…