Кастомная miniCart. Проблема обновления total_coun
Доброго времени суток,
Кастомизирую дизайн мини корзины и столкнулся с проблемой.
Корзина отображается нормально, функционально все работает кроме JS при добавлении товара.
т.е. на странице когда нажимаешь «добавить товар в корзину» всплывает pop-up, что товар добавлен в корзину, класс дива меняется на full, но [[+total_count]] и [[+total_cost]] не отрабатывают корректно.
Сумма и количество товара появляется только после перезагрузки страницы.
Верстка отличается от стандартной тем, что дополнительно завернуто в ul->li, empty|not_empty классы висят на li элементах.
Верстка ниже.
Что я упустил, подскажите?
Кастомизирую дизайн мини корзины и столкнулся с проблемой.
Корзина отображается нормально, функционально все работает кроме JS при добавлении товара.
т.е. на странице когда нажимаешь «добавить товар в корзину» всплывает pop-up, что товар добавлен в корзину, класс дива меняется на full, но [[+total_count]] и [[+total_cost]] не отрабатывают корректно.
Сумма и количество товара появляется только после перезагрузки страницы.
Верстка отличается от стандартной тем, что дополнительно завернуто в ul->li, empty|not_empty классы висят на li элементах.
Верстка ниже.
<div id="msMiniCart" display="style:inline-block" [[+total_count:isnot=`0`:then=`class="full"`:else=``]]>
<ul class="nav navbar-nav">
<li id="bottomCart" class="empty b-bottom-panel__buy">
<a class="nounderline" id="bottom-cart">
<i class="b-ico b-ico_basket b-ico_sm"></i>
<span class="b-tooltip b-tooltip_bp js-tooltip-buy">
<span class="underline">Корзина</span>
</span>
<span class="badge badge_theme_normal">[[+total_count]]</span>
</a>
</li>
<li id="bottomCart" class="not_empty active b-bottom-panel__buy">
<a href="/cart" class="nounderline pull-left" id="bottom-cart">
<span class="b-ico b-ico_basket b-ico_sm"></span>
<span class="b-tooltip b-tooltip_bp js-tooltip-buy">
<span class="underline">Корзина</span>
<span class="b-tooltip__wrap" style="display: none; visibility: visible; margin-bottom: 70px;">
Добавлено в корзину
</span>
</span>
<span class="badge badge_theme_normal">[[+total_count]]</span>
<span class="b-price b-price_theme_normal">
<span class="b-price__num">[[+total_cost]]</span>
<span class="b-price__sign"> руб.</span>
</span>
</a>
</li>
</ul>
<a id="bottomButton" class="empty btn btn_theme_normal btn-primary navbar-right disabled navbar-btn" href="#" rel="nofollow">Оформить заказ</a>
<a id="bottomButton" class="not_empty btn btn_theme_normal btn-primary navbar-btn navbar-right" href="#" rel="nofollow">Оформить заказ</a>
</div>Что я упустил, подскажите?
Комментарии: 6
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Добавил, но увы проблему это не решило.
Происходит добавление, но в minicart отображается total_count/cost только после обновления страницы.
Верстка разделена на дублирующиеся li (отличаются css классами).
JS отрабатывает корректно, total_count, total_cost отрабатывает, но т.к. они отражаются в li, который имеет display:none, то он не виден.
т.е. при первом добавлении в корзину, не происходит изменение display:none на элементе, который имеет класс not_empty и поэтому все так же виден li с классом empty.
Исправил ситуацию дополнительным костылем на JS.
dnaty.ru/katalog/rasxodniki/koleso2.html
Делал через вызов tpl.msMiniCart…
> tpl.msCart.outer2
> tpl.msCart.row2