【问题标题】:Restore scroll position on back恢复背面的滚动位置
【发布时间】:2016-11-25 16:48:32
【问题描述】:

我有一长页的结果。当我单击一个项目(进入特定项目页面)然后返回页面结果时,恢复结果页面中的滚动位置可能非常有用。 我有两个我实际上不喜欢的想法:

  • 在结果页面的url中添加一个参数,如results?scrollitem=2(在此转换中添加notify:false),然后转到项目页面。
  • 使用$cacheFactory存储滚动位置,然后使用。

有更聪明的方法来实现吗?

【问题讨论】:

    标签: angularjs angular-ui-router mean-stack


    【解决方案1】:

    将滚动的位置存储在 $rootScope 中,但一种干净的方法是存储在您要重定向的指令的本地范围中。

    我假设您的应用程序是单页应用程序。如果没有那么 $cacheFactory 可以为您工作。

    编辑:-请参考此链接了解范围

    https://www.undefinednull.com/2014/02/11/mastering-the-scope-of-a-directive-in-angularjs/

    【讨论】:

    • 这是一个单页应用。我不清楚这个“存储在您重定向的指令的本地范围内”。你在说哪个指令?
    • 你用来渲染 dom 的指令
    • 我知道隔离作用域是如何工作的,但是当我离开结果页面时作用域被破坏了,我仍然没有得到你的解决方案..
    猜你喜欢
    • 2019-12-15
    • 2011-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多