V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
gdtv
V2EX  ›  问与答

手机网页“加载更多”如何返回当前页?

  •  
  •   gdtv · 2017-04-06 07:38:54 +08:00 via Android · 1867 次点击
    这是一个创建于 2790 天前的主题,其中的信息可能已经有所发展或是发生改变。
    发现有很多网站都是用加载更多的方式加载文章。翻了几页之后,点击进入文章的详情页面,再点击返回键返回列表页,这个时候返回的是列表的首页,感觉这样的用户体验非常不好啊。

    1,对于普通用户来说,遇到这样的网站,如何返回当前列表页面?
    2,对于开发者来说,如何保证用户返回的是当前列表页面?
    10 条回复    2017-04-06 19:49:55 +08:00
    ChefIsAwesome
        1
    ChefIsAwesome  
       2017-04-06 08:14:11 +08:00 via Android
    target=blank 可破
    crysislinux
        2
    crysislinux  
       2017-04-06 08:18:44 +08:00 via Android
    比较讨厌加载更多这种方式,手机端尤其讨厌。
    1.长按选择在新标签页打开
    2. 详情页就在列表页弹个 dialog 来显示。如果是 spa ,检测到触发列表页的是 popstate ,就使用之前的数据而不是重新加载列表页的数据。运气好的话,浏览器会保证滚动位置,运气不好的话,就只有自己保存滚动位置,然后恢复位置了。另外一个办法就是路由从列表页到详情页的时候不要销毁列表页,这样直接返回就是了
    Hello1995
        3
    Hello1995  
       2017-04-06 08:23:47 +08:00 via Android
    默默想起了张大妈……
    syG6WNaS
        4
    syG6WNaS  
       2017-04-06 08:26:28 +08:00
    location.hash
    gdtv
        5
    gdtv  
    OP
       2017-04-06 08:55:51 +08:00 via Android
    @Hello1995 张大妈不仅有这个问题,他的列表页还不能在新窗口打开详情页
    gdtv
        6
    gdtv  
    OP
       2017-04-06 08:58:23 +08:00
    @crysislinux 我一般都是长按选择在新标签页打开, 但是这个变态的网站无法长按在新标签打开 http://m.smzdm.com/
    nfroot
        7
    nfroot  
       2017-04-06 09:09:52 +08:00
    这些程序员完全就不考虑你点击去了别的页面,还要点击回来的情况,也不知道他们的产品工程师是怎么想的,就连 bat 这样的大厂的主业务也喜欢搞这样的缺陷。
    ChefIsAwesome
        8
    ChefIsAwesome  
       2017-04-06 09:25:28 +08:00
    这东西为什么特别难搞?因为网页进到下一页,浏览器就把之前一页给销毁了,回退到之前一页,跟重新加载那一页没区别,这就让保留状态非常困难。可以尝试的解决办法有几个:一个是每次加载更多就改下 url ,一个是缓存,一个是不让那一页被销毁。
    1.改 url 可以实现这个,但这意味着你每次后退都是“减掉”一部分加载出来的内容。跟 app 的体验还是不一样的。
    2.缓存就得考虑什么时候清缓存的问题。得知道用户是新进入这个页面还是刚刚访问过这个页面,后退回来的。
    3.不销毁那一页,就意味着以弹窗的形式展现页面。打开页面是显示弹窗,后退页面是关闭弹窗。这种情况就不能使用 url ,导航通过屏幕上的按钮实现,浏览器的后退不管用,安卓手机的后退也不管用。

    所以,综合看起来,还是在“新标签中打开”这招简单实用靠谱。其实对于 web 来说,一个 app 中的每个页面都有 url ,每个页面都能在独立的“标签 /窗口”中操作,是它最大的特色。很多人都有这样的习惯:浏览列表,感兴趣的内容就在新标签中打开,回头再一个一个细看。这种体验在 native app 里完全没法实现。但是现在的 web 一味模仿 app 的设计,丢了自己的特色,让人很是失望。
    Luckyray
        9
    Luckyray  
       2017-04-06 14:02:10 +08:00 via iPhone
    1 :详情页用遮罩层来实现,这个 pc 端用的比较多,手机本来就小,不太合适再开一层。
    2 : cookie 上记下来分页参数,再次访问的时候直接加载这一页,之前做的时候就这么弄得。我个人也是极其反感看完文章详情,辛辛苦苦拉下来的好几页都不见了。
    3 :缓存?没仔细想过具体实现。
    Williamp
        10
    Williamp  
       2017-04-06 19:49:55 +08:00
    @ChefIsAwesome Target=_blank increases the bounce rate of the website. For this issue, proper navigation should be there to access the previous page and this will help to improve user's experience as well as easy to go back.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3917 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 47ms · UTC 10:28 · PVG 18:28 · LAX 02:28 · JFK 05:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.