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

网页端能实现类似 QQ、微信移动端那种浏览消息时来新消息右下角出提示的功能吗?

  •  
  •   15651980765 · 124 天前 · 535 次点击
    这是一个创建于 124 天前的主题,其中的信息可能已经有所发展或是发生改变。

    需求:浏览消息时收到新消息,右下角出提示。点击提示滚到新消息处,提示消失。手动滚到新消息处时提示也会消失。

    原来的逻辑:不论是自己发消息还是收到消息,都会自动滚到底部。

    我的实现方案:有新消息时,判断是否是自己发送的,如果是走原来的逻辑。如果是收到别人发来的消息,判断当前滚动条是否在底部,如果在底部,走原来的逻辑;如果不在底部,展示新消息提示。

    遇到的问题:用到的框架是 angularjs,push 新消息后,滚到底部用一层 timeout 包裹,这样能保证在页面渲染出新消息后才执行滚到底部。但是,如果收到消息很快很多,上一条消息可能还没来得及滚到底部,就开始对下一条消息做处理,导致判断滚动条是否到底部时有可能为 false,本来不该出现提示的情况出现了提示。

    暂时想到的解决办法: 不严格判断滚动条是否到底部,给一个容错的高度,滚动条距离底部超过这个高度才认为在浏览消息,允许出提示。

    想请教下大佬们,我这个解决方法是否可行,有没有更加靠谱的方法。

    4 回复  |  直到 2019-08-12 19:24:14 +08:00
        1
    akira   124 天前
    谷歌浏览器有自带这个功能吧
        2
    izoabr   124 天前
    HTML5 支持的新特性,关键字:Notification
        3
    izoabr   124 天前
    实时消息,关键字:Websocket
        4
    izoabr   124 天前
    嗯,然后你的标题的问题跟内容提的问题不是一个,也怪我没好好看内容
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2010 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 42ms · UTC 16:00 · PVG 00:00 · LAX 08:00 · JFK 11:00
    ♥ Do have faith in what you're doing.