1

我正在尝试使用一个变体拆分测试一个网站,该变体可以防止发生产品图像的默认延迟加载,而是显示一个“加载更多”按钮,让用户控制何时加载图像。这是测试页面: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
}
4

0 回答 0