iphone和其他平台载入页面时顺序问题

最近在用scrollTop的时候发现的一些问题。

在document.ready中使用scrollTop()获取当前滚屏的值。

假设页面有大于两屏的高度,先把页面拉到中间,然后刷新页面。

其他平台:

先将页面定位到刷新前的位置,然后获得滚动高度。

wap端(iPhone):

先获得滚动高度,再定位到刷新位置。

 

我在做lazyload的时候,因为这个问题iPhone的初始化出现了问题,在载入页面时无法正确的处理当前页面的图片加载。

 

暂时的解决方法有以下集中,

1、加个时间延迟,这样能保证页面跳转后执行初始化,但是要注意,如果你的时间延迟快过你页面构建的速度(ajax之类),还是无法读取到正确的滚屏高度。

2、价格window.scrollTop(0),因为获得高度默认为0,所以让设置他为0也可以达到相对正确的初始化。如果你要在页面加载的时候改变dom结构慎用。

发表回复