微信小程序仿美团城市选择


Posted in Javascript onJune 06, 2018

本文实例为大家分享了微信小程序城市选择器,供大家参考,具体内容如下

微信小程序仿美团城市选择

代码很简单.

var city = require('../../utils/city.js');
var app = getApp()
Page({
 data: {
 searchLetter: [],
 showLetter: "",
 winHeight: 0,
 // tHeight: 0,
 // bHeight: 0,
 cityList: [],
 isShowLetter: false,
 scrollTop: 0,//置顶高度
 scrollTopId: '',//置顶id
 city: "上海市",
 hotcityList: [{ cityCode: 110000, city: '北京市' }, { cityCode: 310000, city: '上海市' }, { cityCode: 440100, city: '广州市' }, { cityCode: 440300, city: '深圳市' }, { cityCode: 330100, city: '杭州市' }, { cityCode: 320100, city: '南京市' }, { cityCode: 420100, city: '武汉市' }, { cityCode: 410100, city: '郑州市' }, { cityCode: 120000, city: '天津市' }, { cityCode: 610100, city: '西安市' }, { cityCode: 510100, city: '成都市' }, { cityCode: 500000, city: '重庆市' }]
 },
 onLoad: function () {
 // 生命周期函数--监听页面加载
 var searchLetter = city.searchLetter;
 var cityList = city.cityList();
 var sysInfo = wx.getSystemInfoSync();
 var winHeight = sysInfo.windowHeight;
 var itemH = winHeight / searchLetter.length;
 var tempObj = [];
 for (var i = 0; i < searchLetter.length; i++) {
  var temp = {};
  temp.name = searchLetter[i];
  temp.tHeight = i * itemH;
  temp.bHeight = (i + 1) * itemH;
  tempObj.push(temp)
 }
 this.setData({
  winHeight: winHeight,
  itemH: itemH,
  searchLetter: tempObj,
  cityList: cityList
 })

 },
 onReady: function () {
 // 生命周期函数--监听页面初次渲染完成

 },
 onShow: function () {
 // 生命周期函数--监听页面显示

 },
 onHide: function () {
 // 生命周期函数--监听页面隐藏

 },
 onUnload: function () {
 // 生命周期函数--监听页面卸载

 },
 onPullDownRefresh: function () {
 // 页面相关事件处理函数--监听用户下拉动作

 },
 onReachBottom: function () {
 // 页面上拉触底事件的处理函数

 },
 clickLetter: function (e) {
 console.log(e.currentTarget.dataset.letter)
 var showLetter = e.currentTarget.dataset.letter;
 this.setData({
  showLetter: showLetter,
  isShowLetter: true,
  scrollTopId: showLetter,
 })
 var that = this;
 setTimeout(function () {
  that.setData({
  isShowLetter: false
  })
 }, 1000)
 },
 //选择城市
 bindCity: function (e) {
 console.log("bindCity")
 this.setData({ city: e.currentTarget.dataset.city })
 },
 //选择热门城市
 bindHotCity: function (e) {
 console.log("bindHotCity")
 this.setData({
  city: e.currentTarget.dataset.city
 })
 },
 //点击热门城市回到顶部
 hotCity: function () {
 this.setData({
  scrollTop: 0,
 })
 }
})

demo下载地址

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

Javascript 相关文章推荐
有关JavaScript的10个怪癖和秘密分享
Aug 28 Javascript
javascript-简单的日历实现及Date对象语法介绍(附图)
May 30 Javascript
基于mouseout和mouseover等类似事件的冒泡问题解决方法
Nov 18 Javascript
tangram框架响应式加载图片方法
Nov 21 Javascript
JS实现兼容性好,带缓冲的动感网页右键菜单效果
Sep 18 Javascript
Ionic如何实现下拉刷新与上拉加载功能
Jun 03 Javascript
select隐藏选中值对应的id,显示其它id的简单实现方法
Aug 25 Javascript
详解Node.js:events事件模块
Nov 24 Javascript
JavaScript中值类型和引用类型的区别
Feb 23 Javascript
Node.js 异步异常的处理与domain模块解析
May 10 Javascript
js模拟F11页面全屏显示
Sep 17 Javascript
Vue组件通信入门之Provide和Inject机制
Dec 29 Javascript
jQuery实现百度图片移入移出内容提示框上下左右移动的效果
Jun 05 #jQuery
详解封装基础的angular4的request请求方法
Jun 05 #Javascript
React.js绑定this的5种方法(小结)
Jun 05 #Javascript
微信小程序实现城市列表选择
Jun 05 #Javascript
vue.js将时间戳转化为日期格式的实现代码
Jun 05 #Javascript
如何使node也支持从url加载一个module详解
Jun 05 #Javascript
Js中将Long转换成日期格式的实现方法
Jun 05 #Javascript
You might like
电脑硬件及电脑配置知识大全
2020/03/17 数码科技
解决php表单重复提交实现方法
2015/09/29 PHP
PHP 中 Orientation 属性判断上传图片是否需要旋转
2015/10/16 PHP
PHP+ajax分页实例简析
2015/12/07 PHP
2017年最好用的9个php开发工具推荐(超好用)
2017/10/23 PHP
Git命令之分支详解
2021/03/02 PHP
jquery实现微博文字输入框 输入时显示输入字数 效果实现
2013/07/12 Javascript
Jquery的hover方法让鼠标经过li时背景变色
2013/09/06 Javascript
JavaScript实现两个Table固定表头根据页面大小自行调整
2014/01/03 Javascript
jQuery热气球动画半透明背景的后台登录界面代码分享
2015/08/28 Javascript
js实现鼠标拖动功能
2017/03/20 Javascript
jQuery控制input只能输入数字和两位小数的方法
2019/05/16 jQuery
vue中实现回车键登录功能
2020/02/19 Javascript
JS实现烟花爆炸效果
2020/03/10 Javascript
如何使用vue slot创建一个模态框的实例代码
2020/05/24 Javascript
JS使用Chrome浏览器实现调试线上代码
2020/07/23 Javascript
jQuery实现开关灯效果
2020/08/02 jQuery
JavaScript实现简易计算器小功能
2020/10/22 Javascript
给Python初学者的一些编程技巧
2015/04/03 Python
用Python的SimPy库简化复杂的编程模型的介绍
2015/04/13 Python
Python如何读取MySQL数据库表数据
2017/03/11 Python
python 通过xml获取测试节点和属性的实例
2018/03/31 Python
python字典值排序并取出前n个key值的方法
2018/10/17 Python
网易有道2017内推编程题 洗牌(python)
2019/06/19 Python
Pytorch evaluation每次运行结果不同的解决
2020/01/02 Python
记一次pyinstaller打包pygame项目为exe的过程(带图片)
2020/03/02 Python
SISLEY希思黎官方旗舰店:享誉全球的奢华植物美容品牌
2018/04/25 全球购物
印尼网上商店:Alfacart.com
2019/03/11 全球购物
教师校本培训方案
2014/02/26 职场文书
小学班干部竞选演讲稿
2014/04/24 职场文书
2014年电话销售工作总结
2014/12/01 职场文书
2015国庆66周年宣传语
2015/07/14 职场文书
施工安全协议书
2016/03/22 职场文书
创业计划书之寿司
2019/07/19 职场文书
导游词之无锡华莱坞
2019/12/02 职场文书
帮你提高开发效率的JavaScript20个技巧
2021/06/18 Javascript