क्या पृष्ठभूमि-छवि को असीमित रूप से लोड करना संभव है?जावास्क्रिप्ट लोड पृष्ठभूमि-छवि asynchrously
Ive ने कई jQuery प्लगइन को सामान्य छवि को एक असीमित तरीके से लोड करने के लिए देखा है, लेकिन मुझे यह नहीं पता कि यह पृष्ठभूमि-छवि को प्रीलोड/असीमित रूप से लोड करना संभव है या नहीं।
संपादित
मैं मेरी समस्या स्पष्ट। मैं इस टेस्ट साइट पर काम कर रहा हूं http://mentalfaps.com/ पृष्ठभूमि छवि प्रत्येक घंटे एक क्रॉन जॉब द्वारा ताज़ा छवियों के एक सेट से यादृच्छिक रूप से लोड की जाती है (जो फ़्लिकर कैटलॉग पर यादृच्छिक छवियां लेता है)।
होस्ट इस समय नि: शुल्क और धीमा है, इसलिए पृष्ठभूमि छवि को लोड करने में कुछ समय लगता है।
पहले ओवरले की स्थिति (पीएनजी पारदर्शी मानसिकता लोगो वाला एक) और चौड़ाई jQuery(document).ready
लागत में बनाए गए फ़ंक्शन द्वारा नियंत्रित होती है।
आप पृष्ठ पर कई बार ताज़ा करने का प्रयास करते हैं, तो सही ओवरले div की चौड़ाई 0 (और इसलिए आप एक "छेद" लेआउट में देखें)
यहाँ मेरी पदों सेट करने के लिए विधि है:
function setPositions(){
var oH = $('#overlay-header');
var overlayHeaderOffset = oH.offset();
var overlayRightWidth = $(window).width() - (overlayHeaderOffset.left + oH.width());
if (overlayRightWidth >= 0) {
$('#overlay-right').width(overlayRightWidth);
} else {
$('#overlay-right').width(0);
}
var lW = $('#loader-wrapper');
lW.offset({
left: (overlayHeaderOffset.left + oH.width() - lW.width())
});
}
समस्या यह है कि $(window).width()
प्रभावी विंडो चौड़ाई कम है! इसलिए चेक विफल हो जाता है और स्क्रिप्ट $('#overlay-right').width(0);
किसी भी विचार के लिए जाती है?
एक बार एक छवि कैश्ड हो जाने पर, ब्राउज़र से उस छवि को सभी कॉल, तत्व के बावजूद, कैश की अवधि समाप्त होने तक कैश किए गए संस्करण को कॉल करेंगे। – zzzzBov
मुझे पूरा यकीन है कि सभी छवियों को असीमित रूप से लोड किया गया है। – James