|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
01.05.2019, 01:19 | #1 |
Пользователь
Регистрация: 03.11.2017
Сообщений: 32
|
Баг скроллинга в чате (на моб.устройстве)
Доброго времени суток. Помогите найти и устранить ошибку.
При отправке сообщения, чат скроллится в самый конец и через секунду случается скачек на 4-5 сообщения вверх и последние отправленные уже не видно. Не знаю в чем может быть причина. По хорошему, чат должен скроллится в конец к последнему сообщению и на нем фиксироваться. С ПК вроде все нормально отображается, а вот с мобильного устройства замечаются скачки и смещение сообщений. Прикладываю видео с багом https://www.youtube.com/watch?v=ytq17UnTXxM Исходники чата https://cloud.mail.ru/public/4j3U/3k3moM4K8 index.php Код:
Код:
Код:
Последний раз редактировалось Alex11223; 01.05.2019 в 09:47. |
01.05.2019, 09:58 | #2 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Что за -20? И какой-то сложный автоскролл, наверно ж можно например просто вызвать scrollIntoView на последнем сообщении.
ЗЫ зачем вы конвертируете utf-8 в win1251? Используйте везде utf-8.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
01.05.2019, 12:33 | #3 |
Пользователь
Регистрация: 03.11.2017
Сообщений: 32
|
Нашел его на GitHub, по функционалу полностью устраивает.
Но вот почему-то на мобильных устройствах происходит скачек сообщений, видимо из-за отсутствия фиксированной высоты блоков. Но когда ставлю фиксированную например height:50px;, то баг скроллинга пропадает. А когда убираю высоту или ставлю min-height, то все равно случается баг. |
01.05.2019, 13:40 | #4 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
и? я ж предложил более простой вариант скролла, вот и попробуйте его.
Ну и вообще заменять все содержимое каждые 2 сек так себе идея. Простой вариант как улучшить: добавьте запрос возвращающий время последнего сообщения и запрашивайте/заменяйте HTML только если отличается от времени последней замены. лучше не пользоваться туториалами 2009 года. может вообще просто из-за древней версии jQuery.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
02.05.2019, 12:52 | #5 |
Пользователь
Регистрация: 03.11.2017
Сообщений: 32
|
<<Простой вариант как улучшить: добавьте запрос возвращающий время последнего сообщения и запрашивайте/заменяйте HTML только если отличается от времени последней замены>>
А можно пример кода? Попробую его в деле. |
02.05.2019, 12:59 | #6 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Так сами и напишите.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как закрепить обьект относительно прокрутки(скроллинга) форм | Feraset | Общие вопросы Delphi | 3 | 27.10.2012 23:36 |
По выходу из потока не работают элементы скроллинга компонента dataGridView | zakaev | C# (си шарп) | 2 | 07.09.2011 08:11 |
Пример скроллинга textarea | softbi | HTML и CSS | 2 | 29.06.2011 07:23 |
Подобие скроллинга в паскале | druganito | Помощь студентам | 2 | 18.05.2009 13:46 |
нет диска в устройстве | }{@TT@BЬ)Ч | Операционные системы общие вопросы | 7 | 20.01.2009 20:18 |