Олег

Олег

С нами с 23 марта 2021; Место в рейтинге пользователей: #762
Олег
25 января 2022, 14:24
0
В общем-то всё решилось. Оказалась, проблема была в скрипте вызова всплывающей корзины, который отслеживал клик на всем документе, и если ближайший элемент — корневой узел всплывашки, то корзина обновлялась по AJAX. После такого ощущаешь себя мартышкой с гранатой)) но, на то он и опыт)
Олег
24 января 2022, 17:35
0
Добрый день. Как вы решили эту проблему?
Олег
24 января 2022, 16:58
0
мини-корзина открывается по клику:
document.addEventListener("click", function(event) {
        if (event.target.closest(".header .cart")) {
          $.ajax({  
            type: "POST",  
            url: '[[~10]]',
            success:  function(data) { 
              if (data){
                $('.cart__list').html(data);
              }else{
                miniShop2.Message.error('Что-то пошло не так, попробуйте позже!');
              }
            }
          });
          cart1.classList.add("cart--active");
        }
        if (!event.target.closest(".header .cart")) {
          cart1.classList.remove("cart--active");
        }
      });
В ресурсе №10 лежит список товаров, который вызывается
[[!msCart?
  &tpl=`toggleCart`
]]
toggleCart:
{foreach $products as $product}
  <li class="cart__item">
    <form class="cart__product ms2_form" id="dynamic-{$product.id}" method="post">
      <img class="cart__thumb" src="{$product.image}" alt="{$product.pagetitle}">
      <div class="cart__info">
        <p class="cart__title">
          {$product.article}
        </p>
        <span class="cart__price">
          {$product.price}
        </span>
      </div>
      <div class="cart__product-quantity">
      </div>
      <input type="hidden" name="id" value="{$product.id}">
      <input type="hidden" name="key" value="{$product.key}">
      [[!msDynamicCount?
    		&id=`{$product.id}`
    	]]
    </form>
  </li>
{/foreach}
таким образом получается следующее: при клике «положить в корзину» сколько бы то ни было раз товар в нужном количестве попадает в корзину. При открытии мини-корзины AJAX-ом делается запрос на ресурс №10, который сниппетом msCart по шаблону toggleCart формирует из корзины список товаров и их количество. Из toggleCart запускается сниппет msDynamicCount при изменении количества единиц товаров. Учитывая, что запросы выполняются AJAX'ом, возможно, не стоит ждать быстрой скорости реакции. В моем случае это 1-3 секунды при обновлении страницы. И даже в этом случае нет гарантии, что количество единиц товара будет изменено. Плюс, в инпут невозможно ввести свои показания: фокус очень быстро «уходит» с инпута(возможно ввести символы, но такое никуда не годится).
Олег
24 января 2022, 14:41
0
Когда добавляю товар в корзину появляется jgrowl-попап об успешном добавлении товара в корзину, а счетчик товара прибавляет один товар и сразу же отнимает. Чтобы добавить единицу товара в корзину нужно нажать 1-3 раза по плюсу. Если после нажатия на плюс сразу перейти в корзину — товар добавляется, иначе — возможно да, а может и нет. Что-то мешает, причем каждый раз необходимо разное количество попыток чтобы увеличить количество товара.
Кто-нибудь знает где примерно искать причину или может сталкивался с подобным?
Олег
21 января 2022, 17:34
0
Вы бы стали его использовать?
Олег
30 сентября 2021, 19:46
0
Да, мой босс тоже считает что фронт и бэк одно и тоже, потому что главное — желание)) Да, можно научиться, и это хорошо, если хочется развиваться в этом направлении. Я тоже не хочу уходить из этого места, где работаю, но некоторые моменты очень напрягают. Вы такой список функций привели, что могли бы работать и без руководства) Я, например, переживаю что не смогу сделать полноценный проект из-за нехватки знания в технологиях и опыта. Не хочу показаться грубым и не сочтите за неуважение, но вы зря себя недооцениваете. С таким обширным опытом и технологической прослойкой вас с руками оторвут если надо)
Олег
30 сентября 2021, 17:34
0
Вы, наверное, крутой дядька, если успеваете все это делать. Не представляю как бы я справился с таким количеством функций. Учитесь сами по форумам и ютубам? Или это время уже прошло и вы делаете все это на автомате?
Не мое дело, это точно, но видимо что то вас держит, если вы еще не сбежали с этой карусели.
Олег
30 сентября 2021, 17:10
+1
Видимо, ваш сеошник — самодур и дилетант без опыта и любви к профессии. Согласен, что с такими людьми работать не очень приятно. У меня на работе такой вот товарищ — дизайнер, ей лишь бы поскорее сделать работу и скинуть, а это выглядит как «и так сойдёт» — не ее дело. Тоже небольшая контора)
В моем, правда, случае, сеошник со стажем десять лет и горбатого не лепит, даже подсказывает что-то мне, если знает. Тот задаёт работу всем, и я учусь делать какие-то новые вещи.
Жаль, конечно, но я думаю что это отличительная черта многих маленьких фирмочек. Да, наш дизайнер ещё и старый друг директора… поэтому такой бедлам.
Олег
30 сентября 2021, 11:25
0
Да, по ТЗ их будут указывать вручную. Возможно потому что сайт небольшой. Хотя мне тоже кажется это немного неудобным. Лучше делать рандомную выборку из родительского контейнера. Ну, сеошнику наверное виднее)
Олег
30 сентября 2021, 11:19
0
Да! Все работает, спасибо за помощь)
Олег
23 марта 2021, 16:22
0
Можно ли обойтись малой кровью не меняя кодировку для всей БД, поменяв кодировку у одной таблицы? Если нет, то я как я могу сменить кодировку?