Javascript.RU

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

Ubivectel,
<?php endforeach; ?>
</table>

<table width="100%" border="1" class="castom_history">.php..</table> это убрать
<script>
document.querySelectorAll(".castom_history td").forEach(td => {
let html = td.innerHTML;
let reg = /\[QUOTE\](.+)\[\/QUOTE\]/;
while (reg.test(html)) {

html = html.replace(reg, `<span class="KIDE_quote">$1</span>`)
}
td.innerHTML = html;
})

сюда надо перенести </script>


<div align="center" style="font-size: 24px;margin: 10px 0px 0px 0px; font-family: 'Jura', sans-serif; text-shadow: 1px 1px 1px white;"><?php echo $this->pags; ?></div>

<div style="font-family: Zrnic Cyr Normal;
font-size: 20px; padding: 10px 0 10px 0"><a class="vchat" href="/<?php echo JRoute::_(KIDE_URL."&view=kide"); ?>"><?php echo JText::_("COM_KIDE_VOLVER"); ?></a></div>
</script>
Ответить с цитированием
  #22 (permalink)  
Старый 04.03.2021, 07:57
Профессор
Отправить личное сообщение для Ubivectel Посмотреть профиль Найти все сообщения от Ubivectel
 
Регистрация: 01.12.2020
Сообщений: 166

Сообщение от рони Посмотреть сообщение
Ubivectel,


<table width="100%" border="1" class="castom_history">.php..</table> это убрать
Так это ж полностью грохнуть таблицы хистори?
Ответить с цитированием
  #23 (permalink)  
Старый 04.03.2021, 08:04
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,069

Ubivectel,
с добрым утром! ничего не трогай, ты уже убрал всё что нужно!!!
Ответить с цитированием
  #24 (permalink)  
Старый 04.03.2021, 08:13
Профессор
Отправить личное сообщение для Ubivectel Посмотреть профиль Найти все сообщения от Ubivectel
 
Регистрация: 01.12.2020
Сообщений: 166

Ага, приветик , фуф, вздохнул спокойно, сегодня на денек хочу моск на отдых )
Ответить с цитированием
  #25 (permalink)  
Старый 04.03.2021, 08:16
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,069

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

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

Пириуэт.

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

Если я правильно понимаю, нужно научить этот скрипт:

document.addEventListener("click", ({ target }) => {
    if (target = target.closest('.KIDE_msg_hour')) {
        target = target.closest('.KIDE_msg_top')
        let text = target.textContent;
        kide.insertSmile(text)
    }
});


При цитировании

<span style="color:#ff0000" class="KIDE_msg">  <span class="KIDE_quote">цитата</span><br>текст сообщения</span>


Игнорировать содержание тега span с классом "KIDE_quote"

Ответить с цитированием
  #28 (permalink)  
Старый 14.08.2021, 10:57
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,704

Так можно

document.addEventListener("click", ({ target }) => {
    if (target = target.closest('.KIDE_msg_hour')) {
        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; // Берем текст из клона
        kide.insertSmile(text)
    }
});

Последний раз редактировалось voraa, 14.08.2021 в 11:06.
Ответить с цитированием
  #29 (permalink)  
Старый 14.08.2021, 11:10
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,704

Для цитат лучше использовать семантические элементы <q> или <blockquote>
Ответить с цитированием
  #30 (permalink)  
Старый 14.08.2021, 12:06
Профессор
Отправить личное сообщение для Ubivectel Посмотреть профиль Найти все сообщения от Ubivectel
 
Регистрация: 01.12.2020
Сообщений: 166

Все заработало как надо, спасибо!

Сообщение от voraa
Для цитат лучше использовать семантические элементы <q> или <blockquote>
В смысле теги?

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; // Берем текст из клона
kide.insertSmile(`
Цитата:
${text}
\n`);
}
});

Вот так оно сейчас. И все работает шЕкарно )))
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вроде видел статью, как вставить свой тег с помощью css ...но как то пробежал мимо Deff (X)HTML/CSS 2 09.07.2013 12:49
Как вставить !important в скрипт! lich Общие вопросы Javascript 2 22.05.2013 23:25
Подскажите как вставить переменную в RegExp c модификаторами Дмитрий-Solod Общие вопросы Javascript 2 16.11.2010 19:30
Mootools. Вставить html zeman Библиотеки/Тулкиты/Фреймворки 4 31.03.2009 11:24
Выделить цитату и вставить в форму за 2клика Nubi Элементы интерфейса 2 06.08.2008 12:15