他们会修复移动滚动事件吗?
Posted
技术标签:
【中文标题】他们会修复移动滚动事件吗?【英文标题】:Are they going to fix mobile scroll events? 【发布时间】:2013-10-03 05:25:07 【问题描述】:我可以在台式机上使用此功能,但不能在移动设备上使用。当用户向上滚动并卡在页面底部时,应该会出现该栏。
http://54.200.76.33:8080/
在 safari 等移动浏览器上,该栏会一直运行,直到势头停止。我正在阅读,当用户滚动网页时,javascript 被禁用,因此无法捕捉到该事件。
我正在阅读谷歌教程https://developers.google.com/mobile/articles/webapp_fixed_ui
但我仍然认为这不能解决我的问题。未来是否有修复移动浏览器的计划?有没有办法解决这个问题?
<script type="text/javascript">//<![CDATA[
/*THIS WORKS FINE ON DESKTOP BROWSERS*/
/*Needs to work on mobile browsers*/
$(window).load(function()
var foundTop = $('.found').offset().top;
$(window).scroll(function ()
var currentScroll = $(window).scrollTop();
if (currentScroll >= 40)
$('.found').css(
position: 'fixed',
bottom: '0',
left: '0'
);
else
$('.found').css(
position: 'absolute',
bottom: '-40px',
);
);
);//]]>
</script>
【问题讨论】:
【参考方案1】:有一个 CSS 修复: 您使用过:
style="position: absolute; bottom: -40px; left: 0px;"
对于您的固定位置页脚应用以下 css:
style="position: fixed; -webkit-backface-visibility:hidden; bottom: -40px; left: 0px;"
并修复了javascript:
<script type="text/javascript">//<![CDATA[
/*THIS WORKS FINE ON DESKTOP BROWSERS*/
/*Needs to work on mobile browsers*/
$(window).load(function()
var foundTop = $('.found').offset().top;
$(window).scroll(function ()
var currentScroll = $(window).scrollTop();
if (currentScroll >= 40)
$('.found').css(
bottom: '0',
left: '0'
);
else
$('.found').css(
bottom: '-40px'
);
);
);//]]>
【讨论】:
谢谢维姬!我希望页面加载时页脚不可见。然后当用户开始向下滚动时,我希望它出现。就像他们向下滚动以查找更多笔记一样。 “哦,你在搜索更多的笔记?这里有一个搜索栏!” 它以 position: absolute 和 bottom: -40px 开头,因为它应该在页面加载时不可见。只有当用户向下滚动时它才会固定在底部。 谢谢维姬!现在试试看。 好的,我部署了修改后的代码。它仍然适用于桌面浏览器,而不是我的移动浏览器。是不是因为javascript中的“else css = etc..”还在? else $('.found').css( position: 'absolute', bottom: '-40px', );【参考方案2】:您好 Zeus,您也可以提供您的代码,这样就很容易理解问题出在哪里。 意思是我在这里提供滚动视图的链接。
垂直滚动视图:
http://www.androidhub4you.com/2013/05/simple-scroll-view-example-in-android.html
对于水平滚动视图:
How to make grid-view horizontally scrollable in android
【讨论】:
以上是关于他们会修复移动滚动事件吗?的主要内容,如果未能解决你的问题,请参考以下文章