jQuery-Mobile:.animate({scrollTop})不';在修复页面转换后无法工作

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的

jsFiddle链接位于底部

我有一个用jQuery Mobile创建的Phonegap应用程序。在我发现之前,本机iOS应用程序中的页面转换非常不稳定。它使我的滚动不太好,所以我做了一些改变每

在第一个解决方案之后,还是在我实施第二个解决方案之后,以下代码在我的应用程序中停止工作:

$('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来显示这一点:

  • 普通jQuery-滚动顶工作:

  • 转换修复-scrollTop不工作:

  • 带本机滚动的转换修复程序-scrollTop不工作:

  • 最后一个JSFIDLE是我正在使用的解决方案,也是我需要使用的解决方案。我提供了第二个示例,以显示在我进行任何本机滚动更改之前,
    scrollTop
    功能停止关于如何使用javascript向下滚动页面,有什么想法吗?

    我正在使用jquery1.8.2、jquerymobile1.2.0和phonegap2.2.0(通过构建)


    感谢您提供的帮助。

    在CSS中,您已将容器的position属性设置为Absolute。 删除您的
    div#容器
    它应该会起作用


    感谢您的回复。我看到它在JSFIDLE中工作,但不幸的是,它在应用程序中似乎不是这样工作的。我知道很难解决本机应用程序的问题。删除
    #容器
    CSS规则不会对页面显示或页面转换产生任何问题,但scrollTop仍然无法工作。我会更详细地研究你的建议,看看我还能做些什么。同时,如果你或其他任何人有任何其他想法,那就太好了!当我构建一个移动站点时,我在scrollTop上也遇到了同样的问题,所以我使用了$.Mobile.silentScroll(position)。虽然我没有深入阅读您的问题,但我可以补充一点,滚动动画可以在文档上工作(就绪),只要页面没有缓存。换句话说,您可能需要一个唯一的uri,以便jqm重新加载页面。