为了账号安全,请及时绑定邮箱和手机立即绑定

背景图上有许多可点击的位置,这些位置都要换成div,随着手机设备的变化,精准的显示到各个位置。求解

背景图上有许多可点击的位置,这些位置都要换成div,随着手机设备的变化,精准的显示到各个位置。求解

守着星空守着你 2019-03-05 13:15:31
根据需求,是有一个背景图,上面要有很多可点击的位置,或设置成div,或者是个图片(图片已经排除,因为考虑到加载,就是背景图上让div精准的定位到图片上各个不同的位置,点击时显示不同的东西),求各位大佬解决下。谢谢
查看完整描述

3 回答

?
慕仙森

TA贡献1827条经验 获得超7个赞

你的需求是:一张图片有几个点,不同设备这些点的位置可能有偏差!


如果「点」不密集

可以使用扩大点击范围的方法(移动端一般会增加点击面积哈)。保证「点」在「圈」内就容易多了


点很密集

生成map表,比如以宽度「可变」算:


图上点的位置为: [100, 100], [200, 100]

图片宽度为640

设备宽度由window.clientWidth获取

计算设备和原图比例,计算出点的位置


// 1. 计算得出缩放比

var scale = 0.9;


var pixelMap = {

    '100x100': [100 * 0.9, 100*0.9]

};


// 2. 根据pixelMap生成「点击点」


查看完整回答
反对 回复 2019-03-15
?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

canvas 实现的画会不会有点难


查看完整回答
反对 回复 2019-03-15
?
慕田峪4524236

TA贡献1875条经验 获得超5个赞

用rem布局,用定位就可以解决,


查看完整回答
反对 回复 2019-03-15
  • 3 回答
  • 0 关注
  • 619 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信