AJAX addToCart不适用于每个访问者

时间:2014-10-31 20:00:38

标签: javascript php jquery ajax

更新: 它是由jQuery库引起的,它只在IE9中无法正常工作。这是jQuery 2.x.我不确定究竟是什么问题,但切换到jQuery 1.x解决了问题;)。

我刚刚部署了具有AJAX功能的新电子商店,通过AJAX将产品添加到购物车。但是有些游客在将产品添加到购物车时遇到了麻烦他们有JavaScript = on,但是用于将产品添加到购物车的AJAX功能不起作用......哪里可能有问题?

对于大多数访客来说,这个功能完美无缺。我没有想法,为什么它不适合所有人(我在IE7(XP),IE8(Win7)和更新版本(Win7 + 8)上测试了这个功能,它完美无缺。)​​

这是功能:

function addToCart()
    {
        var product = getCurrentProduct();

        $.post("action/cart.php", {
            action: "add",
            product_id: product.product_id,
            product_variant_id: product.variant_id,
            count: $('#product-quantity').val()
        }, function(data) {
            if (data.ok) {
        //THIS is only fancy stuff
                $('#product-added-box').slideDown();
                $('html, body').animate({ scrollTop: 0 }, 1000);

                setTimeout(function() {
                    $('#product-added-box').slideUp();
                }, 5000);
            }
            updateCartCount();
        }, "json")
    }

1 个答案:

答案 0 :(得分:0)

海报已经解决了这个问题,但我为了未来用户的利益而添加了这个问题。问题是OP正在使用jQuery 2.x;切换到jQuery 1.x解决了这个问题。

原因如下:jQuery 2.x不支持旧版本的Internet Explorer。根据{{​​3}}:

  

jQuery 2.x与jQuery 1.x具有相同的API,但不支持Internet Explorer 6,7或8 the jQuery website中的所有注释也适用于此处。由于IE 8仍然比较常见,我们建议使用1.x版本,除非您确定没有IE 6/7/8用户访问该站点。请仔细阅读jQuery 1.9 Upgrade Guide

这种缺乏支持是您的网站在旧版IE中破解的原因。