popup cart工作不正确的bitrix

时间:2015-06-17 08:04:19

标签: javascript jquery ajax bitrix

我尝试制作弹出式购物车,显示不正确,首先显示弹出窗口,然后更新购物车 我错过了什么?

我试过这个

<script>
    BIS.cartPopup = {
            init: function(container) {
                var cartPopupLink = $('.buttCart');
                var self = this;

                container.hide();

                cartPopupLink.on('click', function(e) {
                    e.preventDefault();
                    $.fancybox({
                        content: container,
                        afterLoad: function() {
                            container.show();
                        }
                    });
                })
            }
    }
        $(function() {
            BIS.cartPopup.init($('#popup-cart-wrapper'));
        })
</script>

这是一个html

<div class="popup__overlay" id="popup-cart-wrapper">
    <div class="popup">
//cart inside
</div>

这是一个购物车更新代码:

<script>
    if (!BIS.updateTopCart) {

        BIS.updateTopCart = {
            init: function() {
                ajax_block('.top-cart');
                ajax_load('.top-cart', '<?=$arResult['AJAX_CALL_ID']?>', $('.top-cart-form').serializeArray());
            }

        }
    }
</script>

1 个答案:

答案 0 :(得分:0)

您可能需要移动此AJAX代码:

$(function() {
    BIS.cartPopup.init($('#popup-cart-wrapper'));
})

对于AJAX回调,它在购物车更新后执行:

BIS.updateTopCart = {
    init: function() {
        ajax_block('.top-cart');
        ajax_load('.top-cart', '<?=$arResult['AJAX_CALL_ID']?>', $('.top-cart-form').serializeArray());
        $(function() {
            BIS.cartPopup.init($('#popup-cart-wrapper'));
        })
    }
}