Последние темы


Как вывести сообщение после добавления товара в корзину? (javascript callback функции)

  • Объясните как ими пользоваться (слаб в javascript).

    SHKfillCartCallback(form) - подана команда на добавление товара в корзину;
    SHKemptyCartCallback() - подана команда на очистку корзины;
    SHKloadCartCallback() - корзина загружена / обновлена;
    SHKtoCartCallback(form) - подана команда отправить товар в корзину;
    SHKrecountItemCallback(count,el) - подана команда пересчитать кол-во товара в корзине.

    Использую SHKloadCartCallback() примерно в таком виде:
    <script>
    function SHKloadCartCallback(){
    $("div.slide").animate({right:'0px'},500);
    }
    </script>
    Тут вроде все понятно и работает даже в неумелых руках. При обновлении\загрузке выдвигается корзина. Проблема в открытии сразу при загрузке страницы, если можно что-то дописать это решило бы проблему.

    SHKtoCartCallback(form) - тут теряюсь. Интуитивно понятно что нужно передать айди товара или что-то подобное.
    <script>
    function SHKtoCartCallback(form){
    $("div.slide_panel").animate({right:'0px'},500);
    }
    </script>
    Происходит то что и нужно - корзина выдвигается при нажатии на кнопку "добавить в корзину", но не происходит добавления. Видимо я таким вызовом переписываю функцию добавления или не понятно что именно добавляю.
    Буду очень признателен если кто-то разъяснит.

  • function SHKtoCartCallback(){
    SHK.fillCart(id,count);
    $("div.slide_panel").animate({right:'0px'},500);
    }

    теперь добавляется товар, но страница перезагружается.

    Не понятен этот момент: SHKtoCartCallback(form) форм в скобочках не трогать или что-то нужно указать?

  • SHK.fillCart(id,count[,refresh])
    видимо третьим параметром можно написать что-то вроде false\norefresh\0
    но что?

  • function SHKtoCartCallback(thisForm){
    SHK.fillCart(thisForm);
    $("div.slide_panel").animate({right:'0px'},500);
    }
    Так добавляются товары, но не работает это $("div.slide_panel").animate({right:'0px'},500);

  • SHK.fillCart(thisForm);

    Зачем вам это? Добавление товара должно происходить без этого, если вы всё настроили верно.

    Если используете SHKtoCartCallback(), то в конце надо добавить return true;.

    function SHKtoCartCallback(form){
        $("div.slide_panel").animate({right:'0px'},500);
        return true;
    }
    
  • спасибо за ответ. Вроде бы понял в чем дело. Анимация начинает срабатывать, но элемент "перересовывается" поэтому корзина не успевает всплыть. Можно ли привязать сообщение о добавлении товара (в данном случае $("div.slide_panel").animate({right:'0px'},500);) к какому-то событию когда корзина уже все пересчитала и зафиксировалась?

  • Можно ли привязать сообщение о добавлении товара (в данном случае $("div.slide_panel").animate({right:'0px'},500);) к какому-то событию когда корзина уже все пересчитала и зафиксировалась?

    Вот событие:

    SHKloadCartCallback() - корзина загружена / обновлена;

    Чтобы сообщение появлялось только после добавления товара, можно создавать глобальную переменную, например так:

    function SHKtoCartCallback(form){
        $("div.slide_panel").animate({right:'0px'},500);
        window.shkIsProductAddStarted = true;
        return true;
    }
    
    function SHKloadCartCallback){
        if(window.shkIsProductAddStarted){
            alert('Товар успешно добавлен в корзину');
            window.shkIsProductAddStarted = false;
        }
    }
    
  • огромное спасибо!

    Вот что было нужно:

    <script>
    function SHKtoCartCallback(form){
        window.shkIsProductAddStarted = true;
        return true;
    }
    
    function SHKloadCartCallback(){
        if(window.shkIsProductAddStarted){
            $("div.slide_panel").animate({right:'0px'},500);
            window.shkIsProductAddStarted = false;
        }
    }
    </script>
    
 

Последние комментарии

  • Я не знаю как тебе объяснить, что твой продукт гавно. Что шопкипер, что catalogfil - полное кривое гавно

    Зачем ты мучаешь себя? Не пользуйся. Другие продукты тоже все "говно", или может говно у тебя в голове?

    Ты хоть сам тестировал свою хрень в подобной ситуации? Нормальный функционал и документацию ты сделать поленился

    Много я таких как ты встречал. У вас всегда кто-то другой виноват. До таких "умников" даже не доходит, что в продукте может отсутствовать требуемый им функционал. И это нормально. Ты хотел многофункциональный комбайн за 500 руб? Я подсказываю обходные пути, но для тебя это слишком сложно (это я про другие темы этого автора).

    видимо с той целью что бы выклянчить копеечку

    С таких как ты мне ничего не надо. Лучше просто забудь о существовании Шопкипера и CatalogFill.

    Давай отвечай

    Зачем мне это? Ни за один ответ я не получил от тебя даже "спасибо".

    или просто кинь ещё 1 бан, хоть власть почувствуешь)))

    Моему терпению можно только позавидовать. Ты заслужил бан уже очень давно.

    Читать далее
  • V

    @Andchir Я не знаю как тебе объяснить, что твой продукт гавно. Что шопкипер, что catalogfil - полное кривое гавно. Я тебе пытаюсь объяснить, что товар или добавляется дублями или изменяются параметры у товаров с таким же артикулом, ты же мне рассказываешь про кнопочки "Добавить" и "Обновить". Ты хоть сам тестировал свою хрень в подобной ситуации? Нормальный функционал и документацию ты сделать поленился, видимо с той целью что бы выклянчить копеечку. Все эти функции должны были быть описаны в документации. Есть демо сайт, есть галерея в нём, значит и импорт должен производиться под этот сайт и всё было бы понятно. Давай отвечай или просто кинь ещё 1 бан, хоть власть почувствуешь)))

    P.S: Весь мой вопрос можно было решить за 1 день, после первого поста.

    Читать далее
  • Ещё один момент, если вам нужно добавить товар, то нужно нужно переключатель "Тип импорта" ставить в положение "Добавить". Но делаете ли вы так - такой информации я тоже не увидел. Вытаскивать из вас информацию по кусочкам - слишком долго.

    Читать далее
  • Вы отправляетесь в бан на 2 дня. Каждый раз одно и то же. Мне не нужна информация сколько вы раз возвращали резервную копию. Но нужен полный конфиг, а не кусочки. При этом нормальная информация "делаю так - получаю так", а не "получаю так или так" (не известно при каких действиях).

    У меня изначально стоял параметр false, я пробую и так и сяк

    Не нужно пробовать "так и сяк", нужно делать так как написано и так как правильно по смыслу описания параметров. После этого писать на форуме, что "делаю как должно быть, но получается не так". Если вы что-то пробуете, что вообще не правильно по смыслу, то мне об этом писать не нужно.

    Читать далее