javascript - 如何让页内元素不随着页面滚动?
PHPz
PHPz 2017-04-10 15:10:43
[JavaScript讨论组]

一个手机上的页面,上面有一块区域,高度固定,有上下滚动条。
如何实现用户在滑动页面的时候,当在这块区域上的时候 只是这块区域的内容滚动,而不是整个页面跟着滚动?

PHPz
PHPz

学习是最好的投资!

全部回复(4)
PHP中文网

给元素加上 position:fixed 的style

ringa_lee

这个写起来会有点复杂:思路是当手机上触发touchstart事件的时候,判断触发事件的位置和那块区域的位置,如果在区域内的话,就阻止事件冒泡和事件默认行为,然后记录下位置,当继续触发touchmove事件的时候,也是阻止事件冒泡和事件默认行为,并开始计算位置,然后用这个和之前记录的位置进行比较计算,以计算值来滚动那块区域的内容(需要自己写js代码来滚动它),这也就是常见的模拟滚动了。会有点复杂,祝好。

怪我咯

用touchstart和touchmove控制上部分scrolltop,加e.preventDefault()禁止浏览器默认的滚动(可以判断是否滚到底部,如果是的话则不禁止,这样上面划完了就自然转成滚动全页)。这样就做到上部分触控只滚动它内部,其他区域滚动则是整页滚动。

PHPz

position:fixed

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号