Вот пример сайта:
vintagetechnics.ru
При добавлении товара в корзину и повторном клике выводятся определенные нотисы (уведомления)
Но дело в том, что в
<div class="-notification-box"></div>
постоянно добавляются неоднотипные нотисы
Т.е. верстка одинаковая, а текст сообщений разный
Вот мой пример сайта:
https://test.vintagetechnics.ru/
Я сделал что-то похожее, т.е. такую проверку и она работает только с первого раза, далее сообщения больше не выводятся, т.к. в объекте уже есть информация:
let Item = function(data) {
this.data = data;
}
const items = {};
$('button').on('click', function() {
$.ajax({
type: 'POST',
url: m_notice_click.ajax_url,
data: dataMnot,
dataType: 'json',
success: function(data) {
$('.-notification-box').each(function(index, value) {
if (index > 0) {
$(this).remove();
if (items[data]) return;
const item = new Item(data);
items[data] = item;
$('.-notification-box').append(item.data);
}
});
}
});
});
У меня есть таймаут, который удаляет нотис:
if ($('.-notification-timer').width()) {
$('.-notification-timer').animate({width: 0}, {duration: 5000, complete: function() { $(this).parent().remove(); }});
}
Вот что у меня на сервере:
<div class="-notification -f-medium error" style="opacity: 1; top: 0px;">
<div class="-notification-close site-icons-close"></div>
<div class="-icon-font- -f-large -notification-icon inline-block"></div>
<div class="inline-block -notification-text">Товара "<?php echo $product_data->get_name(); ?>" нет в наличии в количестве 2 шт.</div>
<div class="-notification-timer"></div>
</div>
У меня динамически меняется только текст и все
Проблема в другом, после повторных кликах у меня не хочет больше добавляться сообщения, что вообще можно сделать в данной ситуации ?
Мне нужно по клику, чтобы неоднотипные сообщения все время добавлялись