vue里用v-for循环出来的图片在:style重新赋值backgroundPosition的值 20

<liv-for="(item,index)indemoList":key="index"><span:style="{backgroundImage:'url('+it... <li v-for="(item, index) in demoList" :key="index">
<span :style="{backgroundImage: 'url(' + item.bgImg+ ')',
backgroundPositionX: index*-32 + 'px',
backgroundPositionY: index*-32 + 'px'}"></span>
</li>
上面这个图片循环出来后关于计算定位的问题,每循环出来一个图片我就要通过下标值就要给(backgroundPositionX)重新赋予一个没有规律的值,请问老师这个怎么做
展开
 我来答
汗会欣Q9
2018-08-01 · TA获得超过1660个赞
知道小有建树答主
回答量:1242
采纳率:81%
帮助的人:622万
展开全部
可以用随机数函数,比如
:style="{
backgroundPosition:
(100/demoList.length*index) + '% ' +
(Math.random()*(100-100/demoList.length*(index+1))+(100/demoList.length*index)) + '%'
}"

至于用什么方式产生合理的随机数,要自己慢慢尝试和选择,上面例子只是做了一个演示,抛砖引玉而已。
追问
我是要对每个图片的backgroundPosition 赋予已知的值,UI给的集成图片是不能随便给值的谢谢,请看懂在答
追答
那就把每个图片特定的位置加入数据数组,比如
demoList: [
{
img: '...png',
pos: {x: 20, y: 32}
}
]

在视图里
:style="{
backgroundPosition: item.pos.x + 'px ' + item.pos.y + 'px'
}"
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式