缓存清除后jquery ajax出现问题

时间:2014-04-22 00:28:50

标签: javascript php jquery ajax

我刚刚建立了第一个网站并实施了一些ajax。因为我已经对脚本进行了更改,我发现如果用户之前已经在那里...那就是.. jquery没有正常工作,直到我禁用java脚本清除缓存和历史记录重新启动浏览器,这对所有用户都是如此,它完全通过动作和php,但是停止向我的购物车添加项目。 我迷路了,需要帮助,我不知道还有什么可以尝试的。很快我禁用了java就完美了。所以它必须在我的jquery中。 我是jquery的新手,而且这里的脚本仍然非常新手。它是来自另一个名为common的文件的调用。这里也是网址http://www.sweetassurfwear.com

frontajax.js

var addClothing = {
    init: function(config) {
        this.config = config;
        this.ajaxLoader();
        this.firstPosit();
        this.bindEvents();
    },
    ajaxLoader: function(){
      $('#content-products').prepend('<div id="sas-ajax"><img src="/images/sas-ajax-loader.gif"></div>');
      loader = $('#sas-ajax');
        $('#sas-ajax').hide();
        $(document).ajaxStart(function() {
            loader.show();
            dw = $(window).width() / 2 - loader.width() / 2;
            dh = $(window).height() / 2 - loader.height() / 2;
            loader.animate({
                'position': 'relative',
                'left': dw,
                'top': dh
            }, 100);
       });
        $(document).ajaxStop(function() {
            $('#sas-ajax').hide();
        });  
    },

    firstPosit: function(){
      var w = $(window).width() / 2 - this.config.clothingbox.outerWidth() / 2, 
        h = $(document).height() / 2 - this.config.clothingbox.outerHeight() / 2, 
        iw = $(window).width() / 2 - this.config.itembox.outerWidth() / 2, 
        ih = $(window).height() / 2 - this.config.itembox.outerHeight() / 2;
        this.config.itembox.animate({
            'position': 'absolute',
            'left': iw,
            'top': ih
        }, 100);
        this.config.clothingbox.css({
            'left': w,
            'top': h
        });  
    },

    bindEvents: function() {
        $('a.button.green.salebtn').on('click', this.grabAsale);
        this.config.itemSelection.on('click', this.fetchInfo);
        this.config.clothingbox.on('click', this.closeoverlay);

        $(window).on('resize', this.overlayresize);
        $(window).on('scroll', this.overlayresize);
    },
    overlayresize: function() {
        var self = addClothing,
        w = $(document).width() / 2 - addClothing.config.clothingbox.outerWidth() / 2, 
        h = $(document).height() / 2 - addClothing.config.clothingbox.outerHeight() / 2, 
        iw = $(window).width() / 2 - addClothing.config.itembox.outerWidth() / 2, 
        ih = $(window).height() / 2 - addClothing.config.itembox.outerHeight() / 2;
        addClothing.config.itembox.animate({
            'position': 'absolute',
            'top': ih,
            'left': iw
        }, 100);
        addClothing.config.clothingbox.css({
            'left': 0,
            'top': 0,
            'width': $(document).width()
        });
    },
    closeoverlay: function() {
        var self = addClothing;
        self.config.itembox.fadeToggle(200);
        self.config.clothingbox.fadeToggle(200);

    },
    showItems: function(){
        var self = addClothing,
        cw = $(window).width() / 2 - self.config.clothingbox.outerWidth() / 2,
                ch = $(document).height() / 2 - self.config.clothingbox.outerHeight() / 2;
                self.config.clothingbox.animate({
                    'position': 'absolute',
                    'opacity': 'toggle',
                    'top': 0,
                    'left': 0,
                    width: $(window).width()
                }, 200).animate({
                    'width': $(window).width(),
                    'height': $(document).height(),
                    'opacity': 0.9
                }, {duration: 200,queue: false});
                self.config.itembox.animate({
                    'position': 'relative',
                    'opacity': 'toggle'
                }, {duration: 200,queue: false});
    },

    fetchInfo: function(e) {
        e.preventDefault();
        var self = addClothing, 
        url = $(this).attr('href').replace('browse', 'ajax');
        $.ajax({
            url: url,
            type: 'GET',
            success: function(results) {
                addClothing.showItems();
                $('.item').html(results);
                $('#tocart').on('click', addClothing.takeone);
                $('#clothsbox').prepend('<span id="closebutton" title="close">X</span>');
                $('#closebutton').on('click', self.closeoverlay);
            }
        });
    results = null;
    },


    takeone: function(e) {
        e.preventDefault();
        var self = addClothing, 
        form = $('div#clothsbox.item form').serialize(), 
        url = $('div#clothsbox.item form').attr('action').replace('/cart.php', '/ajax/add_to_cart.php');
        url = url + "?" + form;
        $.ajax({
            url: url,
            type: 'GET',
            success: function(results) {
                self.closeoverlay();
                //$('#content-categories').prepend('<div id="itemadded">Item has been added to you cart</div>'); 
                self.config.notice.css({
                    'position': 'relative',
                    'left': 0,
                    'top': 0
                });
                dw = $(window).width() / 2 - self.config.notice.width() / 2;
                dh = $(window).height() / 2 - self.config.notice.height() / 2;
                self.config.notice.animate({
                    'position': 'relative',
                    'left': dw,
                    'top': dh,
                    'opacity': 'toggle'
                }, 300);
                self.config.notice.fadeToggle(3000);

            }

        });
       results = null; 
    }
},
addSaleItem = {
     init: function(config){
         this.config = config;
         this.bindEvents();
     },
     bindEvents: function(){
         var self = addSaleItem;
         self.config.grabsale.on('click', self.addSaleToCart);
     },

    addSaleToCart: function(e){
        e.preventDefault();
        var self = addSaleItem; 
        url = $(this).attr('href').replace('/cart.php', '/ajax/add_to_cart.php');
        $.ajax({
            url: url,
            type: 'GET',
            success: function(results) {
                self.config.saleNotice.css({
                    'position': 'relative',
                    'left': 0,
                    'top': 0
                });
                dw = $(window).width() / 2 - self.config.saleNotice.width() / 2;
                dh = $(window).height() / 2 - self.config.saleNotice.height() / 2;
                self.config.saleNotice.animate({
                    'position': 'relative',
                    'left': dw,
                    'top': dh,
                    'opacity': 'toggle'
                }, 300);
                self.config.saleNotice.fadeToggle(1000);

            }

        });
       results = null; 
     }

 };

正如我所说,我只是学习jquery,这里肯定有一个重大错误我看不到,但我看不出生成和控制台错误?

我做错了什么 它也只在iexplorer 11中运行了几次,然后才开始发生相同的结果,我必须重新启动浏览器。

以下是来自common.js

的内容
$(function(){
addClothing.init({
        itemSelection: $('a.button.green.catbtn'),
        clothingbox: $('div.cloverlay'),
        itembox: $('div.item'),
        notice: $('div#itemadded')
    });
});

1 个答案:

答案 0 :(得分:0)

嗨我通过比我更早开始一个php会话解决了这个问题,现在一切似乎都应该工作了。 感谢所有关注我的小问题的人。非常感谢