jQuery-Mobile:.animate({scrollTop})不';在修复页面转换后无法工作
jsFiddle链接位于底部 我有一个用jQuery Mobile创建的Phonegap应用程序。在我发现之前,本机iOS应用程序中的页面转换非常不稳定。它使我的滚动不太好,所以我做了一些改变每 在第一个解决方案之后,还是在我实施第二个解决方案之后,以下代码在我的应用程序中停止工作:jQuery-Mobile:.animate({scrollTop})不';在修复页面转换后无法工作,jquery-mobile,cordova,scroll,jquery-animate,scrolltop,Jquery Mobile,Cordova,Scroll,Jquery Animate,Scrolltop,jsFiddle链接位于底部 我有一个用jQuery Mobile创建的Phonegap应用程序。在我发现之前,本机iOS应用程序中的页面转换非常不稳定。它使我的滚动不太好,所以我做了一些改变每 在第一个解决方案之后,还是在我实施第二个解决方案之后,以下代码在我的应用程序中停止工作: $('html,body').animate({scrollTop:$('specific id').offset().top},2500); 上面的代码将用户在2.5秒内向下滚动到ID为specific ID的
$('html,body').animate({scrollTop:$('specific id').offset().top},2500);
上面的代码将用户在2.5秒内向下滚动到ID为specific ID
的DIV
我尝试了多种方法,但似乎没有任何效果:
$('#container').animate({scrollTop:$('#specific id').offset().top},2500);
$('html,body,#container')。动画({scrollTop:$('#specific id')。offset().top},2500);
$('.scrollable').animate({scrollTop:$('#specific id').offset().top},2500);
$(“.scrollable”).animate({scrollTop:$(“#specific id”).scrollTop()},2500);
下面是我如何调整jquery移动代码来修复页面转换的:
1。我用容器包装了[data role=“page”]
DIV
DIV
2。我添加了以下Javascript
$(document).one('mobileinit',function(){
//将#container div设置为jqm页面容器
$.mobile.pageContainer=$(“#container”);
//将默认页面转换设置为幻灯片
$.mobile.defaultPageTransition='slide';
});
3。我添加了以下CSS
正文{
保证金:0;
}
分区#集装箱{
位置:绝对位置;
宽度:100%;
排名:0;
底部:0;
}
div[data role=“header”]{
位置:绝对位置;
排名:0;
左:0;
右:0;
}
div[data role=“content”]{
位置:绝对位置;
top:41px;
底部:0;
左:0;
右:0;
}
.可滚动{
溢出y:滚动;
-webkit溢出滚动:触摸;
}
/*iOS特定修复程序,不要在Android设备上使用*/
.可滚动>*{
-webkit转换:translateZ(0px);
}
我设置了三个jsfiddle来显示这一点:
scrollTop
功能停止关于如何使用javascript向下滚动页面,有什么想法吗?
我正在使用jquery1.8.2、jquerymobile1.2.0和phonegap2.2.0(通过构建)
感谢您提供的帮助。在CSS中,您已将容器的position属性设置为Absolute。 删除您的
div#容器
它应该会起作用
感谢您的回复。我看到它在JSFIDLE中工作,但不幸的是,它在应用程序中似乎不是这样工作的。我知道很难解决本机应用程序的问题。删除
#容器
CSS规则不会对页面显示或页面转换产生任何问题,但scrollTop仍然无法工作。我会更详细地研究你的建议,看看我还能做些什么。同时,如果你或其他任何人有任何其他想法,那就太好了!当我构建一个移动站点时,我在scrollTop上也遇到了同样的问题,所以我使用了$.Mobile.silentScroll(position)。虽然我没有深入阅读您的问题,但我可以补充一点,滚动动画可以在文档上工作(就绪),只要页面没有缓存。换句话说,您可能需要一个唯一的uri,以便jqm重新加载页面。