के माध्यम से अजाक्स HEAD अनुरोध मुझे HEAD
अनुरोध बनाने और किसी सरणी में डेटा की अखंडता को बनाए रखने के साथ कुछ समस्याएं प्रतीत होती हैं।जावास्क्रिप्ट/jQuery
var imageTemp = Array();
$('*')
.each(function(index){
if($(this).css('background-image') != 'none'){
imageTemp.push($(this).css('background-image').slice(5, -2));
}
});
मैं एक विशिष्ट पृष्ठ पर सभी पृष्ठभूमि छवियों के यूआरएल पर कब्जा:
इस स्निपेट को देखते हुए। अब, Content-Length
के लिए HEAD
अनुरोध के माध्यम से प्रत्येक छवि का आकार उठाने का प्रयास कर, मैं इस स्निपेट का उपयोग:
var imageData = Array();
for(var i = 0; i < imageTemp.length; i++){
ajaxSizeRequest = $.ajax({
type: "HEAD",
async: true,
url: imageTemp[i],
success: function(message){
imageData.push([imageTemp[i], ajaxSizeRequest.getResponseHeader('Content-Length')]);
}
});
}
हालांकि, जब मैं imageData
के माध्यम से console.log
डंप, मैं प्रत्येक तत्व (जो URL को शामिल करते श्रृंखला होनी चाहिए और सामग्री-लंबाई) समाप्त होता है [undefined, XXXX]
रूप XXXX
हमेशा की तरह, Content-Length
मैं स्टंप्डया हूँ अनुरोध किया आखिरी के आकार है जहां हालांकि यह एक समय/देखते हुए इस मुद्दे को प्रतीत होता है। क्या मेरे पास यहां दौड़ने वाली एक तरह की दौड़-स्थिति है?
, आप' success' कॉलबैक का दूसरा पैरामीटर का उपयोग कर सकते हैं। – SLaks