Цитата:
|
Ubivectel,
очередная полная хрень, но будет работать... document.querySelectorAll(".KIDE_msg_top").forEach(msg => { for (let { textContent } of msg.querySelectorAll("span")) if (msg.innerHTML.includes('cd112ab6890ac4fc25030e2bbcbd7e08') && /\w{11,}/g.test(textContent.replace(/\s+/g, ''))) { msg.remove(); break; } }) |
Ubivectel,
или так если только по сессии document.querySelectorAll(".KIDE_msg_top").forEach(msg => { for (let { textContent } of msg.querySelectorAll("span")) if (msg.innerHTML.includes('cd112ab6890ac4fc25030e2bbcbd7e08')) { msg.remove(); break; } }) |
Я уже понял, что так или иначе окончательное решение в PHP, за костыли спасибо! :thanks:
|
Вопрос как всегда по синтаксису, писать условие для каждой сессии если их надо несколько это дико
if (sesion == ('98fe218f4ea8e120f80cb76756d6fd6f')) return; Как их правильно перечислить? |
Ubivectel,
let arrSesion = ['123a','fff3', 'ddd5']; if (arrSesion.includes(sesion)) return; |
Опять чувствую себя тупым, а тут что делаю не так?
document.querySelectorAll(".KIDE_msg_top").forEach(msg => { for (let { textContent } of msg.querySelectorAll("span")) let arrSesions = ['65953456c6bfbbe88159538019814581', '064fdb4c9c8f5a367e2282c700c0640c']; if (msg.innerHTML.includes(arrSesions)) { msg.remove(); break; } }) |
Ubivectel,
let arrSesions = ['65953456c6bfbbe88159538019814581', '064fdb4c9c8f5a367e2282c700c0640c']; document.querySelectorAll(".KIDE_msg_top").forEach(msg => { if(arrSesions.some(sesions => msg.innerHTML.includes(sesions))) msg.remove(); }) |
В процессе решения диких задач, мы по сути сделали теневую блокировку, когда пользователь видит свои сообщения, а все остальные нет. Единственное, как-то бы еще добавить, что бы это условие:
let arrSesions = ['65953456c6bfbbe88159538019814581', '064fdb4c9c8f5a367e2282c700c0640c']; document.querySelectorAll(".KIDE_msg_top").forEach(msg => { if(arrSesions.some(sesions => msg.innerHTML.includes(sesions))) msg.remove(); }) Не срабатывало, если arrSessions содержит this.sesions Короче надо, что бы при обновлении страницы, свои сообщения видел только автор :) |
Ubivectel,
строка 1 смотри пункт #37 остальное элементарно var sesion = '123'; let arrSesions = ['65953456c6bfbbe88159538019814581', '064fdb4c9c8f5a367e2282c700c0640c']; document.querySelectorAll(".KIDE_msg_top").forEach(msg => { if (arrSesions.some(sesions => sesions != sesion && msg.innerHTML.includes(sesions))) msg.remove(); }) |
Нашел, как можно вывести сессию: echo $r->sesion;
но пока не понимаю как это запихнуть в переменную |
Вот оно! let test = "<?php echo $r->sesion; ?>"; :dance:
|
Сделал так:
let sesion = "<?php echo $r->sesion; ?>"; let arrSesions = [ '2f02de1647f05dfdbb7b8c0ee714a516', '1dc86f8de96b0944817d62b83be76b78', '13916bff412b17fad03aa702884edf50', '741068e4c9a802d13c2556f511c58fdd', '916466dd0c26c1ed575b96e59a5c44c2', 'd0a4d2096a7ab0d1b76110dcfa07f03a', 'abec9a88413a304c6d2f12b5548f67c1' ]; document.querySelectorAll(".KIDE_msg_top").forEach(msg => { if (arrSesions.some(sesions => sesions != sesion && msg.innerHTML.includes(sesions))) msg.remove(); }) console.log('Моя сессия:' + sesion); Однако при обновлении страницы сообщения остаются для всех :( не понимаю пока, что не так |
Победил :dance: проблема была в том, что вписывал скрипт в файл php и там он видимо не находил msg. Перенес в файл JS и все заработало, рони спасибо!
|
Ubivectel,
телепатии не хватает, чтобы понять, что ты хочешь сделать, особенно причём тут сессии. |
Цитата:
|
Часовой пояс GMT +3, время: 00:10. |