【问题标题】:jquery ajax chat scrollbar chromejquery ajax 聊天滚动条 chrome
【发布时间】:2012-10-19 15:12:32
【问题描述】:

这个问题与堆栈溢出上发布的许多其他问题非常相似,我发现了一些基于我的代码的解决方案,但对我正在搜索的内容没有帮助,Overstackyelotofu 和一些类似的帖子......(这与我几天前发布的另一个问题有关,但我很确定它现在处于非活动状态,因为我得到了我的答案)。

所以我基本上创建了一个 ajax 聊天应用程序,我希望 div 的滚动条检查它是否在按钮上,如果它显示消息然后滚动。我找到了 3 种主要方法来做到这一点(删除其中一种,因为它的基本原理与其他方法相同)

要么:

    if($("#chatscreen")[0].scrollHeight - $("#chatscreen").scrollTop() == $("#chatscreen").outerHeight())
    {
    alert("work");
    }

$("#chatscreen").scroll(function(){
    if($(this)[0].scrollHeight - $(this).scrollTop() == $(this).outerHeight())
    {
    alert("work");
    }
});​

我已经在 firefox、internet explorer 和 chrome 上测试了第一个代码,它在 firefox 和 internet explorer 上运行良好,但在 chrome 上却不行。

它们之间唯一真正的区别是$("#chatscreen").scroll(function(){,它在使用滚动条时基本上会继续执行脚本,并且由于某种原因,这在我尝试使它们无法使用的所有 3 个浏览器都出现问题时起作用。

所以我一直在努力寻找一个可以在 firefox、chrome 和 internet explorer 上运行的好选择。

感谢您提供的任何帮助/建议。

【问题讨论】:

    标签: javascript jquery google-chrome scrollbar


    【解决方案1】:

    我知道为什么它在 chrome 上不起作用

    $("#chatscreen")[0].scrollHeight - $("#chatscreen").scrollTop() == $("#chatscreen").outerHeight()

    是错误的,当我们添加 .scroll() 时仍然不确定为什么它会起作用,但是上面的等式需要通过在最终结果中添加 -1 来更改以使其起作用。

    写在这里是因为有一天它可能会对某人有所帮助......

    【讨论】:

      猜你喜欢
      • 2015-03-24
      • 2010-10-18
      • 2023-03-05
      • 1970-01-01
      • 2015-07-19
      • 1970-01-01
      • 2023-03-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多