iphone上的页面滚动时隐藏和显示div
问题描述:
需要在网页的顶部显示一个元素(div
)。在滚动期间,元素应该消失并在滚动结束后重新出现。iphone上的页面滚动时隐藏和显示div
为了增加复杂性:
- 我们的代码是来宾代码(因此我们不能操纵DOM结构等)。
- 我们的代码是为了用iPhone/iPad(移动Safari浏览器)
我们一直在努力,听取他们对文件/身体touchstart
事件,并隐藏在我们的专用处理器的元素(div
)工作。但是,在某些站点(当DOM结构变得相当复杂时),滚动响应时间会显着增加,即使处理程序执行完全是,为空。
我们正在寻找正确的方式来管理元素(重新)外观,同时滚动时对用户体验的影响最小。
答
在最近的IOS版本(5.x的)固定定位(position:fixed
在CSS)的支持流畅,让你的元素会被放置在屏幕坐标。这可能是解决你的麻烦的一个很好的起点。
答
我会认为Javascript是你最好的解决方案。你可以使用document.createElement动态地将你的DIV插入到任何内容中,然后添加一些javascript来监听onScroll ...
如果你愿意,你甚至可以使用由本机代码构建的自定义HTML来填充DIV。
任何帮助?
+1
'onScroll'处理程序在* scroll之后被调用,在我们的例子中,我们希望在* scroll开始之前隐藏元素*。 – roee
不能使用键盘输出 – Petah
固定在iOS 6上不可靠... “注意:只能在Android 2.2+中使用以下元标记:。iOS Safari中的部分支持指的是错误行为。” --http://caniuse.com/css-fixed – nym