jQuery移动端日期组件,H5移动端日期组件,MUI移动端日期组件,移动端简单的日期组件

news2024/11/19 15:12:47

前言

比较简单
H5移动端日期组件,使用的是MUI官方JS组件,因为不想自己写一个所以直接拿来改动一下用了

效果图

在这里插入图片描述

实现

准备工作

到官网下载css和js:https://dev.dcloud.net.cn/mui/
到官网查看API:https://dev.dcloud.net.cn/mui/ui/#picker
也可以在HBuilder中右键创建App项目中选择,日期例子官方都带有的

示例

下载下来的mui只需要下面引入的几个文件即可,我这里组合了jQuery使用

<!DOCTYPE html>
<html>

	<head>
		<meta charset="utf-8">
		<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
		<title></title>
		<!--标准mui.css-->
		<link rel="stylesheet" type="text/css" href="mui/css/mui.min.css">
		<link rel="stylesheet" type="text/css" href="mui/css/mui.picker.min.css" />
		<link rel="stylesheet" type="text/css" href="mui/css/mui.dtpicker.css" />

		<!-- 注:这一部分样式是我自己定义的,可要可不要-->
		<style>
			.mui-dtpicker {
				border: none;
			}
			
			.mui-dtpicker,
			.mui-poppicker {
				background-color: #fff;
				box-shadow: 0 -2px 5px 0 rgb(0 0 0 / 10%);
			}
			/** 调节选择数字的背景*/
			
			.mui-picker {
				/*background-color: #ededed;*/
				background-color: #fff;
			}
			/** 年月日...标题*/
			
			.mui-dtpicker-title h5 {
				border: none;
				background-color: #f3f3f3;
				padding: 10px;
			}
			
			.mui-dtpicker-header {
				padding: 10px;
			}
			
			.mui-dtpicker-header button {
				border-radius: 4px;
			}
			
			.mui-btn-blue,
			.mui-btn-primary,
			input[type=submit] {
				color: #fff;
				border: 1px solid #4c7bff;
				background-color: #4c7bff;
			}
			
			.mui-pciker-rule-ft {
				border-top: solid 1px rgb(90 90 90 / 10%);
				border-bottom: solid 1px rgb(90 90 90 / 10%);
			}
		</style>
	</head>

	<body>

		<button id='demo1' data-options='{"type":"year"}' class="btn mui-btn mui-btn-block">选择年份 ...</button>
		<button id='demo2' data-options='{"type":"month"}' class="btn mui-btn mui-btn-block">选择月份 ...</button>
		<button id='demo3' data-options='{"type":"date"}' class="btn mui-btn mui-btn-block">选择日期 ...</button>
		<button id='demo4' data-options='{"type":"datetime"}' class="btn mui-btn mui-btn-block">选择日期时间 ...</button>
		<button id='demo5' data-options='{"type":"time"}' class="btn mui-btn mui-btn-block">选择时间 ...</button>

		<script type="text/javascript" src="js/jquery-2.1.1.min.js"></script>
		<script type="text/javascript" src="mui/js/mui.min.js"></script>
		<script type="text/javascript" src="mui/js/mui.picker.min.js"></script>
		<!-- 引入这个主要是要用自己定义的年份-->
		<script type="text/javascript" src="mui/js/mui.dtpicker.js"></script>
		<script>
			$(function() {
				// 初始化
				//mui.init();

				// 点击选择日期
				$("#demo1").click(function() {
					// 固定属性设置
					var options = {};
					options.type = 'year';
					options.beginYear = 2010; // 开始年份
					options.endYear = 2050; // 结束年份
					//options.beginDate = new Date(2010, 1, 1); // 设置开始日期
					//options.endDate = new Date(2050, 1, 1); // 设置结束日期
					//options.labels = ['年'] // ['年', '月', '日']
					var picker = new mui.DtPicker(options);
					picker.show(function(rs) {
						console.log('选择结果: ' + rs.text);
						picker.dispose();
						picker = null;
					});
				})

				// 点击选择月份
				$("#demo2").click(function() {
					// 这是获取标签上设置的,或者可以像上面一样js直接设置死
					var optionsJson = $(this).attr('data-options') || '{}';
					var options = JSON.parse(optionsJson);

					var picker = new mui.DtPicker(options);
					picker.show(function(rs) {
						console.log('选择结果: ' + rs.text);
						picker.dispose();
						picker = null;
					});
				})

				// 点击选择日期
				$("#demo3").click(function() {
					var optionsJson = $(this).attr('data-options') || '{}';
					var options = JSON.parse(optionsJson);

					var picker = new mui.DtPicker(options);
					picker.show(function(rs) {
						console.log('选择结果: ' + rs.text);
						picker.dispose();
						picker = null;
					});
				})

				// 点击选择日期时间
				$("#demo4").click(function() {
					var optionsJson = $(this).attr('data-options') || '{}';
					var options = JSON.parse(optionsJson);

					var picker = new mui.DtPicker(options);
					picker.show(function(rs) {
						console.log('选择结果: ' + rs.text);
						picker.dispose();
						picker = null;
					});
				})

				// 点击选择时间
				$("#demo5").click(function() {
					var optionsJson = $(this).attr('data-options') || '{}';
					var options = JSON.parse(optionsJson);

					var picker = new mui.DtPicker(options);
					picker.show(function(rs) {
						console.log('选择结果: ' + rs.text);
						picker.dispose();
						picker = null;
					});
				})

			})
		</script>
	</body>

</html>

本示例代码

百度网盘链接: https://pan.baidu.com/s/1fIbhyO9sETTTGBduKLd1Tw 提取码: gpap

注意

官方日期是没有带年份选择的,如果不是使用本示例代码的话,需要自己去改文件

修改一 mui.dtpicker.js文件

打开mui.dtpicker.js,并找到如下位置,像图片中将年份校验添上
在这里插入图片描述

	case 'year':
		selected.value = selected.y.value;
		selected.text  = selected.y.text;
		break;

修改二 mui.dtpicker.css文件

打开mui.dtpicker.css文件,拉到最底部,将如下样式复制过去即可

/*年*/
[data-type="year"] .mui-picker,
[data-type="year"] .mui-dtpicker-title h5 {
	width: 100%;
}
[data-type="year"] [data-id="picker-m"],
[data-type="year"] [data-id="picker-d"],
[data-type="year"] [data-id="picker-h"],
[data-type="year"] [data-id="picker-i"],
[data-type="year"] [data-id="title-m"],
[data-type="year"] [data-id="title-d"],
[data-type="year"] [data-id="title-h"],
[data-type="year"] [data-id="title-i"] {
	display: none;
}

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

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

相关文章

中国社科院与美国杜兰大学金融管理硕士项目——迎接立夏,切莫忘记自我成长

五月的风吹走了春季&#xff0c;今天我们迎来立夏。作为夏季的第一个节气&#xff0c;立夏常被人们当做万物蓄满能量&#xff0c;即将加速生长的标志。而在职的我们&#xff0c;也应该跟这世间万物一样&#xff0c;在季节交替之时沉淀自己、努力向上成长。在社科院与杜兰大学金…

推荐6个我经常逛的“小网站”,嘿嘿嘿!!!

如今&#xff0c;全球互联网上已经有超过 17 亿个网站。除了全球那些主流网站被大家所熟知外&#xff0c;其实还有很多很多网站&#xff0c;被淹没在了互联网世界中。 每次发现优质的内容都会第一时间给大家分享出来&#xff0c;不管是软件&#xff0c;插件&#xff0c;脚本还…

vscode 实现代码编译

vscode 实现代码编译 之前一直纠结用vascode的编译按钮实现编译&#xff0c;这样就需要额外配置json文件&#xff0c;会非常麻烦&#xff0c;其实vscode也支持用编译命令&#xff0c;具体步骤如下&#xff1a; 新建makefile文件&#xff0c;文件内容如下&#xff1a; target: g…

Activity四种启动模式分析

一、前言 在初学Android的时候&#xff0c;几乎所有的学习资料都会提到Activity有四种启动模式&#xff1a; standardsingleTopsingTasksingleInstance 而提到这四种启动方式的差异&#xff0c;必然要提到一个重要的概念Activity的Task任务栈&#xff0c;我们需要明确的一点是…

vue3之vite创建H5项目之4 ( 自动导入api、按需引入van)

vue3之vite创建H5项目之4 1:自动导入vue3相关api之ref等 &#xff08;unplugin-auto-import&#xff09; pnpm i unplugin-auto-import -D 1-1 自动导入vue3相关api之ref 1-1 vite.config.ts 配置 import AutoImport from "unplugin-auto-import/vite"export de…

【操作系统OS】学习笔记第三章 内存管理【哈工大李治军老师】更新中...

基于本人观看学习 哈工大李治军老师主讲的操作系统课程 所做的笔记&#xff0c;仅进行交流分享。 特此鸣谢李治军老师&#xff0c;操作系统的神作&#xff01; 如果本篇笔记帮助到了你&#xff0c;还请点赞 关注 支持一下 ♡>&#x16966;<)!! 主页专栏有更多&#xff0…

RocketMQ的下载及安装以及历史和发展

目录 RocketMQ历史及发展RocketMQ的下载及安装下载安装windows下的安装下载配置环境变量启动注意事项 控制台插件环境要求下载启动控制台使用文档Linux下的安装环境要求启动注意事项控制台插件 RocketMQ源码安装与调试下载环境要求IntelliJ IDEA导入启动RocketMQ源码 RocketMQ历…

2023天猫运营数据分析:Q1防晒品类行业分析报告

随着防晒观念的普及&#xff0c;日常防晒已逐步成为很多人的习惯。加之今年消费市场日渐复苏&#xff0c;消费者的“报复性出游”也加速了防晒市场的发展。 市场对防晒品类在2023年的表现抱有更高的期待&#xff0c;防晒品类有望成为整个化妆品消费领域复苏较好的赛道。 根据鲸…

项目准备工作、笔试题目讲解

目录 讲一下冯诺依曼体系结构输入的处理 查bug基本步骤 我希望你重点可以讲一讲处理的这个过程&#xff0c;该如何处理呢&#xff1f; 介绍一下Maven Maven如何配置阿里云镜像&#xff1f; 介绍一下springboot 介绍一下mybatis 为什么有些人说mybatis不是很好&#xff1f…

五种网络IO模型:阻塞式IO 非阻塞式IO IO复用(IO multiplexing) 信号驱动式IO 异步IO

文章目录 五种网络IO模型举例说明阻塞式I/O模型非阻塞式I/OI/O多路复用信号驱动式I/O异步I/O比较结果总结同步 异步 阻塞 非阻塞阻塞/非阻塞&#xff1a;同步/异步&#xff1a; 举例子&#xff1a;小宇去新华书店买书场景&#xff1a; 五种网络IO模型 阻塞式IO 非阻塞式IO…

联通云正式启动“同舟计划”,点燃数字引擎赋能产业未来

科技云报道原创。 当数据成为重要生产要素&#xff0c;算力被视为数字时代的核心生产力&#xff0c;以此为基础的“算网融合”将激发数字经济新动能。 作为云计算国家队&#xff0c;联通云在不断寻求技术突破、深度扎根实体产业的过程中&#xff0c;开启了自我持续进化之路。…

微服务 - Kong Http Api 实现负载均衡、jwt认证、限流、黑白名单

建立/激活链接 使用Kong的第一步是激活链接&#xff0c;登录Kong管理后台&#xff0c;找到 Connections&#xff0c;把Kong的Api链接上,因为我本地的端口进行了映射&#xff0c;所以需要找到Docker的network 上的ip&#xff0c;进行绑定, ip 地址 172.19.0.3 docker network …

Java多线程基础-8:单例模式及其线程安全问题

单例模式是经典的设计模式之一。什么是设计模式&#xff1f;代码的设计模式类似于棋谱&#xff0c;棋谱就是一些下棋的固定套路&#xff0c;是前人总结出来的一些固定的打法。依照棋谱来下棋&#xff0c;不说能下得非常好&#xff0c;但至少是有迹可循&#xff0c;不会下得很糟…

JAVA9新特性

JAVA9新特性 概述 ​ 经过4次推迟&#xff0c;历经曲折的Java9最终在2017年9月21日发布。因为里面加入的模块化系统&#xff0c;在最初设想的时候并没有想过那么复杂&#xff0c;花费的时间超出预估时间。距离java8大约三年时间。 ​ Java 9提供了超过150项新功能特性&#x…

RSA加密的原理

一、RSA加密算法的原理 先上公式&#xff1a; 加密过程&#xff1a;其实就是明文的E次方对N取模公钥&#xff1a;&#xff08;E,N&#xff09;解密过程&#xff1a;密文的D次方对N取模私钥&#xff1a;&#xff08;D,N&#xff09;那么以上公式中的E、D、N分别代表什么&#x…

solidworks版本推荐

有不少人在入坑SolidWorks的时候&#xff0c;不知道下载哪一个版本&#xff0c;不清楚SolidWorks哪个版本更好用一些&#xff0c;其实选择适合自己的版本才是关键。那么该如何选择版本呢&#xff1f;不知道如何选择SOLIDWORKS版本的&#xff0c;可以参考以下3个方面。 一、SOL…

自动化测试工具的基本原理以及应用场景

自动化测试工具是现代软件开发流程中必不可少的组成部分&#xff0c;它可以通过编写脚本或使用图形用户界面工具自动化测试过程&#xff0c;提高测试的效率和准确性。本文将介绍自动化测试工具的基本原理以及应用场景。 自动化测试工具的基本原理 自动化测试工具通常采用的原理…

我与smardaten | 百天无码路,苦逼中带点小美好

大家好&#xff0c;我是云华&#xff08;化名&#xff09;&#xff0c;一个不太懂技术的无代码开发者&#xff0c;游走在无码世界的自由闲散人。现今是我从事无码开发的第四个月&#xff0c;已经从小白蜕变成了熟手。前两天&#xff0c;睿睿老师找到我&#xff0c;说最近计划办…

【wpf】枚举的绑定最易用法 和 全局静态绑定的应用

背景 有时我们做配置界面的时候&#xff0c;有很多配置项是枚举。通过我们会用一个Combobox实现&#xff0c;如果能直接用Combobox绑定枚举&#xff0c;那将会非常方便。这里绑定将涉及到两个方面&#xff0c;一个是数据源的绑定&#xff0c;还有就是当前选择项的绑定。最后我们…

每天一道算法练习题--Day23 第一章 --算法专题 --- ----------并查集

背景 相信大家都玩过下面的迷宫游戏。你的目标是从地图的某一个角落移动到地图的出口。规则很简单&#xff0c;仅仅你不能穿过墙。 实际上&#xff0c;这道题并不能够使用并查集来解决。 不过如果我将规则变成&#xff0c;“是否存在一条从入口到出口的路径”&#xff0c;那么…