Цитата:
|
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, время: 16:54. |