需求:9张滤镜模版,如果用户选择一张背景则这一张分别对应这9张模版,如果用户选择了两张背景,则依次排列,即第3张模版对应背景的第一张,如果选择三张背景图仍是以此类推。
方法:
var that=
this;
for (
var i =
0; i <=
8; i++) {//i从0到8,对应9张滤镜。
if (i < that.data.allimage.length) { //指用户选择的图片的个数。
var param = {};
var
string =
"imagefile[" + i +
"].below";
param[
string] = that.data.allimage[i];
that.setData(param);
}
var nn;
if (i >= that.data.allimage.length) {//当超出背景个数时。
if (i % that.data.allimage.length ==
0) {
nn =
0;
//将i 设置为0
}
var param = {}; //使用this.setData({})给数组里边的对象的某一个属性赋值时采用办法。
var
string =
"imagefile[" + i +
"].below";
param[
string] = that.data.allimage[nn];
that.setData(param);
nn = nn +
1;
}
}
}
②丑图羞羞的滤镜和模版对应的方式是两张图片重叠一起实现。(两张图片使用absolute绝对定位在一块)