抱歉,您的浏览器无法访问本站

本页面需要浏览器支持(启用)JavaScript


了解详情 >

这次用的比较简单,因为企业名片的项目.需要地图显示标点.这里只用到了 wx.openLocation 其他几个API也比较简单这里这个会直接打开坐标点,并会标注名车和地址 还会有导航去这里. 12345678910getlocation: function () { var that = this; wx.openLocation({ latitude: tha...

使用阿里巴巴的iconfont最简单.直接下载下来,把压缩包里的css改成wxss 引用就能用了 wxss 12345678@import "/dist/weui-grid.wxss";/* 字体加粗 */.font-bold { font-weight: 700;}.... wxml 1<view class="iconfont...

需要做一个滚动后,头部固定的页面
这个用到 css 里的 fixed 就可以实现了

1
2
3
4
5
6
7
8
9
10
11
.headDiv {
position: fixed;
/*固定定位*/
top: 0;
right: 0;
bottom: 0;
left: 0;
width: 100%;
height: 60px;
border: 1px solid blue;
}

小程序有两种转发形式,一种是右上角点击转发,另一种是通过按钮转发. 右上角形式 1234567891011121314151617181920212223242526272829303132//onload里设置这句 就会接收shareTicket 当然没有也会转发wx.showShareMenu({ withShareTicket: true})//只要在js定义...

参考了下别的文章,很多人都用scroll-view来做.当然这完全可以,而且也是比较简单,但是效果不是那么特别满意.
因为是使用的是触及底边才加载,看上去不是那么美.
我希望的效果是,距离底边一段距离就开始加载了.
仔细研究了小程序的文档,有了方案. 但是这里先讲一下 scroll-view 容易跌入的坑.

scroll-view 有几个常用方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
bindscrolltoupper   //滚动顶边触发
bindscrolltolower //滚动到底边触发

//这两个比较特殊 因为有滚动方向问题 向下滚动只会触发 距离底边 向上滚动只能触发距离顶边
//于是就不是我想要的效果了 我想的是 向下滚动距离多少 就触发一个效果 所以只能用下面的 bindscroll
//还有就是他们触发的是 bindscrolltoupper和bindscrolltolower 所绑定的事件 而没有自己的方法
upper-threshold //距离顶边触发 参数是数字
lower-threshold //距离底边触发 参数是数字

//这个比较简单了 实时监听滚动距离
bindscroll

//wxml中使用中的事例
//<scroll-view scroll-y style="height: 200px;" bindscrolltoupper="upper" bindscrolltolower="lower" bindscroll="scroll" scroll-into-view="{{toView}}" scroll-top="{{scrollTop}}" upper-threshold="1000" lower-threshold="500">



//其他一些不主要的方法
scroll-into-view //滚动到指定id元素的位置
scroll-top //滚动到距离头部的指定位置

模块定义

1
2
3
4
5
6
7
8
9
// common.js
function sayHello(name) {
console.log(`Hello ${name} !`)
}
function sayGoodbye(name) {
console.log(`Goodbye ${name} !`)
}
//需要用module.exports暴露出来
module.exports.sayHello = sayHello

模块使用

1
2
3
4
5
6
7
8
9
var common = require('common.js')
Page({
helloMINA: function() {
common.sayHello('MINA')
},
goodbyeMINA: function() {
common.sayGoodbye('MINA')
}
})

以上是最简单的使用方法.这个方法有个好处就是那个函数知道出自那里.
下面的方法更现代一些,不过有个问题是,方法出自那里不会那么清晰.所以用的时候看着办吧.

这个动画能实现基本功能.不过还是挺费劲的.
但现在还有个问题没有解决.
就是循环的时候 每个items加上动画 如何让他单个执行 这个还没想好

js

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
Page({
data: {
markers: [{
id: 0,
latitude: 28.0369400000,
longitude: 120.6492300000,
width: 20,
height: 20,
title: "欧美佳化妆美甲祛斑纹绣店"
}],
animationData: {}
},
onLoad: function () {
// 页面渲染完成
//实例化一个动画
this.animation = wx.createAnimation({
// 动画持续时间,单位ms,默认值 400
duration: 1000,
/**
* http://cubic-bezier.com/#0,0,.58,1
* linear 动画一直较为均匀
* ease 从匀速到加速在到匀速
* ease-in 缓慢到匀速
* ease-in-out 从缓慢到匀速再到缓慢
*
* http://www.tuicool.com/articles/neqMVr
* step-start 动画一开始就跳到 100% 直到动画持续时间结束 一闪而过
* step-end 保持 0% 的样式直到动画持续时间结束 一闪而过
*/
timingFunction: 'ease',
// 延迟多长时间开始
delay: 100,
/**
* 以什么为基点做动画 效果自己演示
* left,center right是水平方向取值,对应的百分值为left=0%;center=50%;right=100%
* top center bottom是垂直方向的取值,其中top=0%;center=50%;bottom=100%
*/
transformOrigin: 'center top 0',
success: function (res) {
console.log(res)
}
});

setTimeout(function () {
this.rotate();
}.bind(this), 200)
},

/**
* 放大显示
*/
rotate: function () {
//放大显示后并恢复
// //现在唯一的问题是 如果在循环里绑定相同的动画 却是单一执行呢 唉....
// this.animation.rotate(150).step()
this.animation.opacity(1).scale(1.5, 1.5).step().scale(1, 1).step();
this.setData({
//输出动画
animation: this.animation.export()
})
}
})

test.js 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899...

先说这两个的主要用法吧import 引入模版 可以根据固定样式显示数据 所以适合和数据进行组合的include 引入内容 无法和数据进行组合 所以适合引用固定样式的组件 而没有与数据交换操作的页面 现在很奇怪的事情是 include的不好使. 只有import是可用的已经搞懂include怎么用了,这个文档啊,字句真需要仔细琢磨.要不太有歧义了. include可以将目标文件除了的整个代...