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

Цитировать сообщение свайпом
Привет мир!

Местный профессор написал вот такой скрипт, который прекрасно работает, вот он:

document.addEventListener("click", ({ target }) => {
    if (target = target.closest('.qutes')) {
        target = target.closest('.KIDE_msg_top')
        let clon = target.cloneNode(true); // Делаем копию узла с потомками
        clon.querySelectorAll(".KIDE_quote").forEach(el => el.remove()); // Удаляем из копии все span.KIDE_msg
        let text = clon.textContent.trim(); // Берем текст из клона
        if (text.length > 60) text = text.slice(0, 60) + '...'
        kide.insertSmile(`[QUOTE]${text}[/QUOTE]\n`); // ставляем текст в инпут
    }
});


Код цитирует сообщения в чате. Очень захотелось научить телефон делать это свайпом, нашел такой код:

let start = null;
swipeElement.addEventListener("touchstart", function (event) {
    if (event.touches.length === 1) {
        start = event.touches.item(0).clientX;
    } else {
        start = null;
    }
});

swipeElement.addEventListener("touchend", function (event) {
    let offset = 100;
    if (start) {
        let end = event.changedTouches.item(0).clientX;
        if (end < start - offset) {
            console.log('Swipe right');
        }
    }
});


Но совместить их явно не для моих пока способностей, я долго пытался справиться самостоятельно, честно))))
Ответить с цитированием