微信小程序实现日历效果


Posted in Javascript onDecember 28, 2018

本文实例为大家分享了微信小程序实现日历效果的具体代码,供大家参考,具体内容如下

效果预览:

微信小程序实现日历效果

wxml部分:

<view class='box1' style='width: {{ sysW * 7 }}px'>
 <view class='dateBox'>{{ year }} - {{ month}}</view>
 <block wx:for='{{ weekArr }}'>
  <view style='width: {{ sysW }}px; height: {{ sysW }}px; line-height: {{ sysW }}px;'>{{ item }}</view>
 </block>
 <block wx:for='{{ arr }}'>
  <view style='{{ index == 0 ? "margin-left:" + sysW * marLet + "px;" : "" }}width: {{ sysW }}px; height: {{ sysW }}px; line-height: {{ sysW }}px;' class='{{ item == getDate ? "dateOn" : ""}}'>{{ item }}</view>
 </block>
</view>

wxss部分:

.box1 .dateBox{
 width: 100%;
 height: 50px;
 line-height: 50px;
 text-align: center;
 margin-top: 20px;
 font-size: 40rpx;
}

.box1{
 display: flex;
 flex-wrap: wrap;
 margin: 0 auto;
}

.box1>view{
 height: 30px;
 line-height: 30px;
 text-align: center;
 font-size: 34rpx;
}

.dateOn{
 border-radius: 50%;
 background-color: hotpink;
 color: #fff;
}

js部分:

// page/index/index.js
Page({

 /**
  * 页面的初始数据
  */
 data: {
  arr: [],
  sysW: null,
  lastDay: null,
  firstDay: null,
  weekArr: ['日', '一', '二', '三', '四', '五','六'],
  year: null
 },

 //获取日历相关参数
 dataTime: function () {
  var date = new Date();
  var year = date.getFullYear();
  var month = date.getMonth() ;
  var months = date.getMonth() + 1;

  //获取现今年份
  this.data.year = year;

  //获取现今月份
  this.data.month = months;

  //获取今日日期
  this.data.getDate = date.getDate();

  //最后一天是几号
  var d = new Date(year, months, 0);
  this.data.lastDay = d.getDate();

  //第一天星期几
  let firstDay = new Date(year, month, 1);
  this.data.firstDay = firstDay.getDay();
 },

 onLoad: function (options) {
  this.dataTime();

  //根据得到今月的最后一天日期遍历 得到所有日期
  for (var i = 1; i < this.data.lastDay + 1; i++) {
   this.data.arr.push(i);
  }
  var res = wx.getSystemInfoSync();
  this.setData({
   sysW: res.windowHeight / 12,//更具屏幕宽度变化自动设置宽度
   marLet: this.data.firstDay,
   arr: this.data.arr,
   year: this.data.year,
   getDate: this.data.getDate,
   month: this.data.month
  });
 }
})

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
让任务管理器中的CPU跳舞的js代码
Nov 01 Javascript
JavaScript 计算当天是本年本月的第几周
Mar 22 Javascript
ExtJs扩展之GroupPropertyGrid代码
Mar 05 Javascript
基于jQuery的倒计时实现代码
May 30 Javascript
JS打开层/关闭层/移动层动画效果的实例代码
May 11 Javascript
js禁止页面使用右键(简单示例代码)
Nov 13 Javascript
JQuery实现简单的图片滑动切换特效
Nov 22 Javascript
js获取html的span标签的值方法(超简单)
Jul 26 Javascript
vue-cli+webpack记事本项目创建
Apr 01 Javascript
JavaScript数组push方法使用注意事项
Oct 30 Javascript
详解React 元素渲染
Jul 07 Javascript
vue3+typeScript穿梭框的实现示例
Dec 29 Vue.js
Mint UI实现A-Z字母排序的城市选择列表
Dec 28 #Javascript
axios携带cookie配置详解(axios+koa)
Dec 28 #Javascript
微信小程序日历/日期选择插件使用方法详解
Dec 28 #Javascript
解决echarts的多个折现数据出现坐标和值对不上的问题
Dec 28 #Javascript
微信小程序时间控件picker view使用详解
Dec 28 #Javascript
微信小程序时间选择插件使用详解
Dec 28 #Javascript
微信小程序当前时间时段选择器插件使用方法详解
Dec 28 #Javascript
You might like
日本因肺炎疫情影响,这几部动漫推延播放!
2020/03/03 日漫
PHP中设置时区方法小结
2012/06/03 PHP
Yii学习总结之安装配置
2015/02/22 PHP
TP5(thinkPHP5框架)实现显示错误信息及行号功能的方法
2019/06/03 PHP
php post换行的方法
2020/02/03 PHP
jquery.ui.progressbar 中文文档
2009/11/26 Javascript
jQuery 数据缓存data(name, value)详解及实现
2010/01/04 Javascript
bootstrap table 服务器端分页例子分享
2015/02/10 Javascript
javascript删除数组重复元素的方法汇总
2015/06/24 Javascript
jquery zTree异步加载、模糊搜索简单实例分享
2016/03/24 Javascript
JS中常用的输出方式(五种)
2016/06/12 Javascript
JavaScript导航脚本判断当前导航
2016/07/12 Javascript
微信小程序 购物车简单实例
2016/10/24 Javascript
ajax异步请求详解
2017/01/06 Javascript
微信小程序之发送短信倒计时功能
2017/08/30 Javascript
基于require.js的使用(实例讲解)
2017/09/07 Javascript
vue采用EventBus实现跨组件通信及注意事项小结
2018/06/14 Javascript
基于layui数据表格以及传数据的方式
2018/08/19 Javascript
Nodejs模块的调用操作实例分析
2018/12/25 NodeJs
js验证身份证号码记录的方法
2019/04/26 Javascript
[04:16]DOTA2英雄梦之声_第09期_斧王
2014/06/21 DOTA
[05:07]DOTA2英雄梦之声_第14期_暗影恶魔
2014/06/20 DOTA
Pycharm在创建py文件时,自动添加文件头注释的实例
2018/05/07 Python
python读取和保存图片5种方法对比
2018/09/12 Python
Django如何自定义分页
2018/09/25 Python
详解如何用django实现redirect的几种方法总结
2018/11/22 Python
pyqt5利用pyqtDesigner实现登录界面
2019/03/28 Python
python 画3维轨迹图并进行比较的实例
2019/12/06 Python
解决python调用自己文件函数/执行函数找不到包问题
2020/06/01 Python
浅析CSS3 中的 transition,transform,translate之间区别和作用
2020/03/26 HTML / CSS
Giglio美国站:意大利奢侈品购物网
2018/02/10 全球购物
Columbia Sportswear法国官网:全球户外品牌
2020/09/25 全球购物
数据库设计的包括哪两种,请分别进行说明
2016/07/15 面试题
在校生自我鉴定
2014/01/23 职场文书
考试作弊检讨书
2015/01/27 职场文书
Win11怎么解除儿童账号限制?Win11解除微软儿童账号限制方法
2022/07/07 数码科技