extract img ajax
by Luis Martin
JavaScript
(function urlList() {
jQuery.ajax({
type: "GET",
url: "https://optimize.google.com/optimize/home/#/accounts/1174608170/containers/6438755/experiments/742",
dataType: "text",
success: function(data) {
var allTextLines = data.split(/\r\n|\n/);
var result = allTextLines.filter(el=> el.split(";")[0] == window.location.pathname )[0].split(";")
var origin = result.shift()
result.filter(l=>l).map( url => {
prefetchImages(url);
})
},
error: function (data, status) {console.log(data,status) }
});
})();//autocall
function prefetchImages(url){
jQuery.ajax({
url: url,
success: function(data) {
console.groupCollapsed("URL -", url);
//finds <img>
var imgs = 0;
var set = new Set();
jQuery(data).find('img').each((_, img) => {
if (imgs < 10) {
var url = img.src;
if (!set.has(url)) {
set.add(url);
imgs++;
}
}
});
var imgArr = Array.from(set);
if (imgArr) {
imgArr.map(url => {
jQuery("<link/>", {
rel: "prefetch",
href: url
}).appendTo("head");
console.log("prefetch -", url)
});
}
console.groupEnd();
/*
//search the css
let doc = document.implementation.createHTMLDocument('n');
doc.write(data);
let links = doc.getElementsByTagName('link')
console.log([...links].filter(el => jQuery(el).attr('id')).map(el => jQuery(el).attr('href')))
*/
}
});
}