更改路线不会立即滚动到新页面中的指定位置

问题描述:

我有2个视图/控制器。在销毁controller1时,我正在存储controller1的数据列表并在服务中滚动位置并重定向至controller2更改路线不会立即滚动到新页面中的指定位置

当从控制器2返回到controller1时,我从服务器获取控制器1的数据列表并滚动位置,并加载所有先前加载的数据,并直接滚动到先前存储的位置。

应该发生的是,它应该直接跳转到该位置,而不是从顶部滚动滚动位置的。(但是,问题是它的滚动,从顶部到存储滚动位置。)

任何解决这个?

+0

请创建一个[MCVE]来演示您所看到的行为。 –

+0

好..我们将在这里创建一个并更新。 – Ananya

尝试像下面,

$ window.scrollTo(0,0);

//service  
this.scrollPositioning= function (param) { 
    if (angular.isDefined(param)) { 
     $window.scrollTo(0, isNaN(param) ? $(param).offset().top : param); 
    } 
}; 

这里PARAM可以是位置值

//ex. 100 or 700 (y axis) 
//service.scrollPositioning(800); 

或者

可以在CSS类名的用户界面视图的在那里可以找到在窗口中并滚动到该特定位置。

//ex. <ui-view class="nesterViewDiv"> 
//service.scrollPositioning('nesterViewDiv'); 
+0

好的。我会试试这个,让我们看看 – Ananya