Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.07.2022, 19:27
Профессор
Отправить личное сообщение для Ubivectel Посмотреть профиль Найти все сообщения от Ubivectel
 
Регистрация: 01.12.2020
Сообщений: 166

Запретить автопрокрутку при условии
Привет мир.

Имеем чат, сообщения выводятся внизу и автоматически прокручиваются, однако это неудобно кода читаешь переписку выше, вроде как нашел два фрагмента кода которые это делают:

if (this.order == "bottom") {
            this.insertAfter(nodo, insertO.lastChild);
        } else insertO.insertBefore(nodo, insertO.firstChild);
        if (!yo && this.sound == 1) this.play_msg_sound();
        this.ajustar_scroll();


kide.ajustar_scroll = function() {
    if (kide.scrolling) return;
    if (kide.order == "bottom")
        kide.attr(
            "KIDE_msgs",
            "scrollTop",
            kide.attr("KIDE_msgs", "scrollHeight")
        );
    else kide.attr("KIDE_msgs", "scrollTop", 0);
};


Но как дописать условие толку как всегда не хватает
Ответить с цитированием
  #2 (permalink)  
Старый 28.07.2022, 19:31
Профессор
Отправить личное сообщение для Ubivectel Посмотреть профиль Найти все сообщения от Ubivectel
 
Регистрация: 01.12.2020
Сообщений: 166

Ах да, не написал чего хочу ))) Запретить прокрутку если сдержимое дива не равно bottom: 0;
Ответить с цитированием
  #3 (permalink)  
Старый 28.07.2022, 19:39
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,735

Перед добавлением нового сообщения посмотрите на scrollTop контентной области, если она прокручена не максимально, не скрольте страницу.
Ответить с цитированием
  #4 (permalink)  
Старый 28.07.2022, 19:42
Профессор
Отправить личное сообщение для Ubivectel Посмотреть профиль Найти все сообщения от Ubivectel
 
Регистрация: 01.12.2020
Сообщений: 166

Я логику-то как раз понимаю, моя беда синтаесис (
Ответить с цитированием
  #5 (permalink)  
Старый 28.07.2022, 21:33
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

Ubivectel,
пробуй ...
let scroll = true;
if (this.order == "bottom") {
            scroll = this.attr("KIDE_msgs", "scrollTop") > (this.attr("KIDE_msgs", "scrollHeight") - this.attr("KIDE_msgs", "clientHeight"));
            this.insertAfter(nodo, insertO.lastChild);
        } else insertO.insertBefore(nodo, insertO.firstChild);
        if (!yo && this.sound == 1) this.play_msg_sound();
if(scroll) this.ajustar_scroll();
Ответить с цитированием
  #6 (permalink)  
Старый 28.07.2022, 21:48
Профессор
Отправить личное сообщение для Ubivectel Посмотреть профиль Найти все сообщения от Ubivectel
 
Регистрация: 01.12.2020
Сообщений: 166

Хммм, не сработало, вот оно: https://noviy-kovcheg.ru/smoking
Ответить с цитированием
  #7 (permalink)  
Старый 28.07.2022, 22:13
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

Ubivectel,
kide.js в строке 202 и прочих пусто
Ответить с цитированием
  #8 (permalink)  
Старый 28.07.2022, 22:22
Профессор
Отправить личное сообщение для Ubivectel Посмотреть профиль Найти все сообщения от Ubivectel
 
Регистрация: 01.12.2020
Сообщений: 166

Не в тот шаблон внес изменения, торможу, сейчас звменил там где надо, но не срабатывает (
Ответить с цитированием
  #9 (permalink)  
Старый 28.07.2022, 22:45
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

Ubivectel,
верни как было всё.
Ответить с цитированием
  #10 (permalink)  
Старый 28.07.2022, 22:46
Профессор
Отправить личное сообщение для Ubivectel Посмотреть профиль Найти все сообщения от Ubivectel
 
Регистрация: 01.12.2020
Сообщений: 166

Сделал
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Смена картинки кнопки при нажатии и обратно при повторном нажатии mff Общие вопросы Javascript 15 03.05.2018 14:12
Вывод массива при условии Роман Андреевич Общие вопросы Javascript 6 22.02.2017 10:37
Выполнение действия при определённом условии Jekins jQuery 2 16.05.2013 19:18
Скрывать элемент при условии Aftal1ck jQuery 3 01.11.2012 16:00
Загрузка картинок при условии AlienZ Общие вопросы Javascript 11 23.06.2011 20:14