防止Ajax延迟加载

时间:2015-11-18 19:00:29

标签: javascript jquery ajax web-performance

我正在尝试拆分对具有防止产品图像的默认延迟加载的变体的网站进行测试,而是提供“加载更多”按钮,该按钮使用户可以控制何时加载图像。这是测试页面:http://www.dunelm.com/category/home-and-furniture/bedding/bedding-sets

问题是,该网站似乎没有使用一个易于访问的插件来进行延迟加载。通过Chrome开发工具中的网络选项卡,我可以看到启动AJAX调用的代码行,但它是主要缩小的javascript文件的一部分,而且非常复杂。这甚至可以覆盖吗?

http://www.dunelm.com/wcsstore/public/js/main.min.js第3,863行):

et.ajaxTransport(function(e) {
    var t;
    return Q.cors || Li && !e.crossDomain ? {
        send: function(i, n) {
            var s, o = e.xhr(), r = ++Pi;
            if (o.open(e.type, e.url, e.async, e.username, e.password),
            e.xhrFields)
                for (s in e.xhrFields)
                    o[s] = e.xhrFields[s];
            e.mimeType && o.overrideMimeType && o.overrideMimeType(e.mimeType),
            e.crossDomain || i["X-Requested-With"] || (i["X-Requested-With"] = "XMLHttpRequest");
            for (s in i)
                o.setRequestHeader(s, i[s]);
            t = function(e) {
                return function() {
                    t && (delete Ai[r],
                    t = o.onload = o.onerror = null ,
                    "abort" === e ? o.abort() : "error" === e ? n(o.status, o.statusText) : n(Di[o.status] || o.status, o.statusText, "string" == typeof o.responseText ? {
                        text: o.responseText
                    } : void 0, o.getAllResponseHeaders()))
                }
            }
            ,
            o.onload = t(),
            o.onerror = t("error"),
            t = Ai[r] = t("abort"),
            o.send(e.hasContent && e.data || null )
        },
        abort: function() {
            t && t()
        }
    } : void 0
}

0 个答案:

没有答案