用js怎样做手机端触屏滚动选择效果啊

JavaScript014

用js怎样做手机端触屏滚动选择效果啊,第1张

先说下实现的思路:

1 页面布局,一堆等待滚动选择的列表 先实现一个竖排的列表,触屏能滚动,也就是说先不考虑选择的问题 写一个固定高度的盒子 把一堆待选择的列表放里面 触屏滚动大概就实现了 简单代码:

<div style="height:300px" id=“box”>

<li style="height:100px"></li>

<li style="height:100px"></li>

...

</div>

2: 滚动选择  第一步监控触屏滚动 onmousedown onmousemove onmouseup 监控鼠标触屏在box里的上下移动距离  也就是说滚动屏幕了多远  然后box scrollTop定位的减去移动的距离也就可以算出当前box距离顶部的距离 例如 mousemove -300px 原来的scrollTop为0 那现在0-(-300)=300px 那么每个li 100px 然后定位当前选中的 li标签 300/100 = 3 当前为选中了 列表中的第三个

3 以上只是提供了一个简单的实现思路  下面是别人的案例你可以看下 大体上就是这种思路实现的

网页链接

首先,用不着JS在实现,通过CSS就可以做到

先建立一个位置容器,例如一个div

然后定义他的css属性position为fixed,通过top/bottom/left/right这四个属性可以控制他在屏幕上的位置

这样便可以做到无论屏幕如何滚动,这个窗口一直固定在窗口的固定位置

如果不希望这个窗口被其他元素遮挡,适当的设置他的z-index即可(例如999)