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