听说最近要废弃control,用cover-image和cover-view替代它,层级问题(我们此等萌新们还在想图标怎么显示在地图上(-.-))

粗略的来说,一个展示(control),一个触发(bindcotroltap)

wxml

 <view class="container">
<map id="map" latitude="{{latitude}}" longitude="{{longitude}}" scale="{{scale}}" bindregionchange="bindregionchange" marks="{{marks}}" controls="{{controls}}" bindcontroltap="bindcontroltap" show-location>
</map>
</view>

wxss

 .container{
height: 100vh;
width: 100%;
}
map{
height: 100%;
width: 100%;
}

js

 //index.js
//获取应用实例
var app = getApp()
Page({
data: {
latitude: 0.0,
longitude: 0.0,
scale: 15 //缩放级别
}, /**
* 监听markers移动事件
*/
bindregionchange: function(e) {
if (e.type == "begin") {
console.log("begin");
} else if (e.type == "end") {
console.log("end");
}
}, /**
*
* 和controls绑定在一起
* id:1
* id:2
* id:3
* id:4
* id:5
* id:6
*/ bindcontroltap: function(e) {
// 点击事件选项
switch (e.controlId) {
case 1:
{
console.log('触发第一事件!!!1');
// this.movetoPosition();
break;
}
case 2:
{
console.log('触发第二事件!!!2');
break;
} case 3:
{
console.log('触发第三事件!!!3');
break;
}
case 4:
{
console.log('触发第四事件!!!4');
break;
} case 5:
{
console.log('触发第五事件!!!5');
break;
}
}
},
/**
* 载入
*/
onLoad() {
wx.getLocation({
type: 'gcj02',
success: (res) => {
console.log(res);
this.setData({
longitude: res.longitude,
latitude: res.latitude
})
}
}),
//通过获取系统宽高 - 可以获得更良好的图片定位
wx.getSystemInfo({
success: (res) => {
this.setData({
controls: [{
id: 1,
// 图片地址
iconPath: '/images/xx.png',
position: {
left: 20,
top: res.windowHeight - 80,
width: 50,
height: 50
},
clickable: true
},
{
id: 2,
// 图片地址
iconPath: '/images/x.png',
position: {
left: res.windowWidth / 2 - 45,
top: res.windowHeight - 100,
width: 90,
height: 90
},
clickable: true
},
{
id: 3,
// 图片地址
iconPath: '/images/xx.png',
position: {
left: res.windowWidth - 70,
top: res.windowHeight - 80,
width: 50,
height: 50
},
clickable: true
},
{
id: 4,
// 图片地址
iconPath: '/images/xxxx.png',
position: {
left: res.windowWidth / 2 - 11,
top: res.windowHeight / 2 - 45,
width: 22,
height: 45
},
clickable: true
},
{
id: 5,
// 图片地址
iconPath: '/images/xxxxx.png',
position: {
left: res.windowWidth - 68,
top: res.windowHeight - 155,
width: 45,
height: 45
},
clickable: true
}
]
})
}
})
},
movetoPosition() {
this.mapCtx.moveToLocation();
},
onShow: function() {
this.mapCtx = wx.createMapContext("map");
this.movetoPosition();
}
})

微信小程序 - bindcontroltap和control的关系(map)的更多相关文章

  1. Fundebug微信小程序BUG监控服务支持Source Map

    摘要: 自动还原真实出错位置,快速修复BUG. Source Map功能 微信小程序的Source Map功能目前只在 iOS 6.7.2 及以上版本支持. 微信小程序在打包时,会将所有 js 代码打 ...

  2. 微信小程序 bindcontroltap 绑定 没生效

    微信 bindcontroltap 绑定 没生效 多次查看官方文档,代码没有问题, 解决: windows下  显示设置中 缩放必须是100%,

  3. 微信小程序基于腾讯云对象存储的图片上传

    在使用腾讯云对象存储之前,公司一直使用的是传统的FTP的上传模式,而随着用户量的不断增加,FTP所暴露出来的问题也越来越多,1.传输效率低,上传速度慢.2.时常有上传其他文件来攻击服务器,安全上得不到 ...

  4. 微信小程序导航:官方工具+精品教程+DEMO集合(1月7更新)

    1:官方工具:https://mp.weixin.qq.com/debug/w ... tml?t=14764346784612:简易教程:https://mp.weixin.qq.com/debug ...

  5. 微信小程序前端与myeclipse的数据交换过程(SSH)

    这是我个人探究微信小程序前端与后端之间的数据交换的过程,再结合个人所学的SSH框架, 编程工具用myEclipse2014工具.当然,前提是后台的项目要部署到tomcat服务器上才行, 然后总结了从后 ...

  6. 微信小程序开发(后端Java)

    微信使用的开发语言和文件很「特殊」. 小程序所使用的程序文件类型大致分为以下几种: ①WXML(WeiXin Mark Language,微信标记语言) ②WXSS(WeiXin Style Shee ...

  7. 【微信小程序】——rpx、px、rem等尺寸间关系浅析

    最近开发微信小程序,在写样式表的时候发现用PX的效果不太理想,而官方文档用rpx来做响应式布局单位,就仔细研究了下,在此做个小总结: 这里先引用官方定义的尺寸单位‘rpx’:可以根据屏幕宽度进行自适应 ...

  8. 微信小程序-02-项目文件之间配合和调用关系

    微信小程序-02-项目文件之间配合和调用关系 我就不说那么多了,我是从官方文档拷贝的,然后加上一些自己的笔记,不喜勿喷 官方文档:https://developers.weixin.qq.com/mi ...

  9. 关于微信小程序的尺寸关系

    在微信小程序开发中,大家尽量使用rpx为单位, px实际上就是系统级的rem(把页面按比例分割750份,1rpx=window.innerWidth/750),或者scale伸缩布局的width=75 ...

随机推荐

  1. JS ajxa请求 返回数据

    1. 发送ajax请求, 后台返回json集合    JQuery: $.each(list集合,回调函数function(下标,集合对象){}); 如下: <script> $(func ...

  2. 使用python抓取并分析数据—链家网(requests+BeautifulSoup)(转)

    本篇文章是使用python抓取数据的第一篇,使用requests+BeautifulSoup的方法对页面进行抓取和数据提取.通过使用requests库对链家网二手房列表页进行抓取,通过Beautifu ...

  3. [BZOJ4199][Noi2015]品酒大会 树形DP+后缀自动机

    由于要找后缀的前缀,所以先用反串建立SAM. link边组成了后缀树. 两个子串的最长公共前缀是LCA的step 树形dp即可. #include<iostream> #include&l ...

  4. 洛谷——P1226 取余运算||快速幂

    P1226 取余运算||快速幂 题目描述 输入b,p,k的值,求b^p mod k的值.其中b,p,k*k为长整型数. 输入输出格式 输入格式: 三个整数b,p,k. 输出格式: 输出“b^p mod ...

  5. 13、Flask实战第13天:SQLAlchemy操作MySQL数据库

    安装MySQL 在MySQL官网下载win版MySQL 双击运行 后面根据提示设置密码然后启动即可,这里我设置的密码是:123456 我们可以通过Navicat客户端工具连接上MySQL addres ...

  6. Codeforces #480 Tutorial

    Problem A,B,C: 简单的模拟,注意A中p mod q时对q=0特殊处理(注意范围) Problem D: Brief Intro: 给定长度为N的数组A,将A中所有连续子序列分成最少的组, ...

  7. 【莫比乌斯反演】BZOJ2920-YY的GCD

    [题目大意] 给定N, M,求1<=x<=N, 1<=y<=M且gcd(x, y)为质数的(x, y)有多少对. [思路] 太神了这道题……蒟蒻只能放放题解:戳,明早再过来看看 ...

  8. 生成随机位数的UUID

    1,生成UUID package com.jeeplus.common.utils; import java.util.UUID; /** * 生成唯一的UUID * * @author songya ...

  9. OC语言基础之NSString

    1.字符串的创建 1: NSString *s1 = @"jack"; 2: 3: //NSString *s2 = [[NSString alloc] initWithStrin ...

  10. HTTPS.SYS怎样使用HTTPS

    HTTPS.SYS怎样使用HTTPS 参考了MORMOT的官方文档:http://blog.synopse.info/post/2013/09/04/HTTPS-communication-in-mO ...