क्या सभी पृष्ठ सामग्रियों को लोड करना संभव है (जैसे लोडिंग बार/एनिमेटेड gif .. या लोडिंग टेक्स्ट ..) जब तक सामग्री पूरी तरह से लोड नहीं हो जाती है और फिर उपयोगकर्ता/विज़िटर को प्रदर्शित की जाती है? यदि यह संभव है, तो क्या आप इसे प्राप्त करने के लिए मुझे केवल दिशा-निर्देश या संसाधन दे सकते हैं। क्योंकि मैं आसानी से छवि प्रीलोडर ढूंढने में सक्षम था, लेकिन मैं एक प्रीलोडिंग तकनीक की तलाश में हूं जो प्रदर्शित होने से पहले पेज पर सभी सामग्री को प्रीलोड करेगा।क्या AJAX/jquery तकनीक के साथ पृष्ठ सामग्री को प्रीलोड करना संभव है?
उत्तर
इसके लिए अजाक्स का उपयोग करने की आवश्यकता नहीं है। बस पृष्ठ के रैपर div display
से none
पर सेट करें। फिर इसे block
पर बदलें जब दस्तावेज़ लोड हो गया है।
आपका कोड इस प्रकार दिखाई देंगे, वेनिला जावास्क्रिप्ट का उपयोग करते हुए:
<script type="text/javascript">
function preloader() {
document.getElementById("preloader").style.display = "none";
document.getElementById("container").style.display = "block";
}
window.onload = preloader;
</script>
<style>
div#wrapper {
display: none;
}
div#preloader {
top: 0; right: 10px;
position:absolute;
z-index:1000;
width: 132px; height: 38px;
background: url(path/to/preloaderBg.png) no-repeat;
cursor: wait;
text-shadow: 0px 1px 0px #fefefe; //webkit
}
</style>
<body>
<div id="preloader">Loading... Please Wait.</div>
<div id="wrapper">
<!-- page contents goes here -->
</div>
</body>
अद्यतन, jQuery में:
<script type="text/javascript">
// Use $(window).load(fn) if you need to load "all" page content including images, frames, etc.
$(document).ready(function(){
$("#preloader").hide();
$("#container").show();
});
</script>
संबंधित दस्तावेज: घटनाक्रम/ready, घटनाक्रम/load, सीएसएस/css & कोर/$
मैंने ऐसा कुछ किया जहां मुझे पता था कि जब कोई छवि पूरी तरह से लोड हो गई थी, तो मैंने $.get()
फ़ंक्शन के साथ प्रीलोडिंग किया और अंतिम पैरामीटर के रूप में कॉलबैक फ़ंक्शन पारित किया। इस तरह, जब छवि वास्तव में डाउनलोड की गई थी, तो मेरी कॉलबैक आग लग जाएगी और मुझे पता चलेगा कि ब्राउज़र में पहले से ही कैश में छवि थी।
आप एक ऐसा फ़ंक्शन लिख सकते हैं जो प्रत्येक छवि के लिए वैश्विक चर को बढ़ाएगा जिसे आप प्रीलोड करने के लिए कहते हैं, और फिर आपका कॉलबैक काउंटर को कम कर सकता है। जब काउंटर शून्य पर वापस आ जाता है, तो दूसरा फ़ंक्शन कॉल करें। एक बार सभी छवियों को पहले से लोड करने के बाद यह फ़ंक्शन आग लग जाएगा।
यह छवियों के लिए है। $ (दस्तावेज़) .ready() निकाल दिया जाता है जब बाकी सब कुछ लोड होने की गारंटी दी जा सकती है। इसलिए, यदि आप इस बिंदु पर अपना दिनचर्या शुरू करते हैं, तो पृष्ठ पर सबकुछ लोड होना चाहिए।
यदि आप एक विधि चुनते हैं जहां सामग्री पूरी तरह से लोड होने तक सामग्री छिपी हुई है, तो इसे प्रारंभ में सीएसएस में छुपाया नहीं गया है, फिर जावास्क्रिप्ट में छोड़ा गया है। यदि आप ऐसा करते हैं, तो जावास्क्रिप्ट अक्षम या अनुपलब्ध वाले किसी भी व्यक्ति को कोई पृष्ठ नहीं मिलेगा। इसके बजाय, दोनों छुपाएं और स्क्रिप्ट से दिखाएं।
<body>
<script type="text/javascript">
document.body.style.visibility= 'hidden';
window.onload= function() { document.body.style.visibility= 'visible'; };
</script>
यह भी ध्यान दें कि 'प्रीलोडर' शब्द वास्तव में आप जो कर रहे हैं उसके लिए सही नहीं है। 'प्री' का तात्पर्य है कि आप पृष्ठ को लाने और कैश करके प्रदर्शन बढ़ा रहे हैं ताकि यह आवश्यक समय तक जाने के लिए तैयार हो।
लेकिन असल में यह विपरीत है: प्रदर्शन को कम करता है, जब उपयोगकर्ता आंशिक सामग्री उपलब्ध होता है, तो उपयोगकर्ता लोड होने के दौरान उपयोगकर्ता को कुछ भी नहीं दिखाता है। प्रगतिशील प्रतिपादन को हराकर धीरे-धीरे ब्राउजिंग धीमा हो जाता है। यह आम तौर पर गलत बात है, और सामान्य ब्राउज़र प्रगतिशील प्रतिपादन के साथ जाने वाले कुछ विशिष्ट मामलों को छोड़कर सबसे अच्छा है। इस तरह वेब काम करता है; लोगों द्वारा अब तक इसका उपयोग किया जाता है।
(लोग, कि मंद बुद्धि प्रबंधन प्रकार जो वास्तव में उपयोग नहीं करते या वेब लेकिन मांग समझते हैं कि उनकी कंपनी की साइट सभी को एक बार दिखाई देता है की तरह के अलावा, है।)
तुम कर सकते हो आसानी से jquery के साथ।
स्क्रिप्ट
$(window).load(function() {
$('#preloader').fadeOut('slow', function() { $(this).remove(); });
});
शैलियों
div#preloader {
position: fixed;
z-index: 999;
width: 100%;
height: 100%;
background: #c6d6c2 url(ajax-loader.gif) no-repeat center center;
}
एचटीएमएल
div id="preloader"
सबसे अच्छा तरीका है
function ajax(){ $('#wapal').html('path to image'); $.ajax({ url:'somfile.php', method:'get', success:function(data){ if(data =='') return; $('#wapal').html(data); } }); }
डीएमयूएस-जेराड उत्तर में कुछ संशोधन क्योंकि यह पृष्ठ पर ऐडसेंस होने पर काम नहीं करता है।
आप इसे आसानी से jquery के साथ कर सकते हैं।
स्क्रिप्ट
$(document).ready(function() {
$('#preloader').fadeOut('slow', function() { $(this).remove(); });
});
शैलियों
div#preloader {
position: fixed;
z-index: 999;
width: 100%;
height: 100%;
background: #c6d6c2 url(ajax-loader.gif) no-repeat center center;
}
एचटीएमएल
div id="preloader"
- 1. क्या इसे प्रदर्शित करने से पहले एक HTML पृष्ठ को प्रीलोड करना संभव है?
- 2. क्या कुकी सामग्री को कर्ल के साथ सेट करना संभव है?
- 3. यूट्यूब एम्बेड को प्रीलोड करना
- 4. क्या एसवीएन में संग्रहीत सामग्री को एन्क्रिप्ट करना संभव है?
- 5. यूट्यूब सामग्री पहचान तकनीक?
- 6. क्या हमें अभी भी माउसओवर छवियों को प्रीलोड करना चाहिए?
- 7. क्या एकाधिक पंक्तियों के साथ टेबललेस चयन करना संभव है?
- 8. क्या एक्वैप्से के साथ Jquery को एकीकृत करना संभव है?
- 9. पृष्ठ सामग्री को लंबवत
- 10. एचटीएमएल में छवियों को प्रीलोड करना, क्या एक और आधुनिक तरीका है?
- 11. क्या आईफ्रेम का अनुकरण करना संभव है?
- 12. क्या JQuery के साथ किसी पृष्ठ पर सभी फ़्लोट का चयन करना संभव है?
- 13. ASP.NET सामग्री पृष्ठ पर ScriptManager AsyncPostBackTimeout मान को सेट करना
- 14. क्या सीएसएस के अंदर गणित करना संभव है?
- 15. क्या एक फॉर्म को साफ़ करना संभव है और पृष्ठ को एक बटन के साथ रीसेट (पुनः लोड) करना संभव है?
- 16. सामग्री पृष्ठ
- 17. क्या iFrame में जावास्क्रिप्ट के साथ iFrame के मूल पृष्ठ के रेफरर को प्राप्त करना संभव है?
- 18. क्या सीएक्सएफ के साथ धारावाहिक कक्षाएं उत्पन्न करना संभव है?
- 19. क्या फ्लास्क के साथ प्रदर्शन करना संभव है?
- 20. क्या जैकिल के साथ पोस्ट शेड्यूल करना संभव है?
- 21. क्या जावास्क्रिप्ट के साथ हैक करना संभव है?
- 22. क्या सीआरसी के साथ प्राथमिक त्रुटि सुधार करना संभव है?
- 23. क्या टैब के लिए grep को गिट करना संभव है?
- 24. क्या एक्लिप्स के साथ मैक्स कोड डीबग करना संभव है?
- 25. क्या शॉर्टकट के साथ सेवा शुरू करना संभव है?
- 26. क्या एचटीएमएल 5 के साथ ध्वनि रिकॉर्ड करना संभव है?
- 27. क्या मैक पर सिल्वरलाइट के साथ विकसित करना संभव है?
- 28. क्या क्यूटी के साथ सीन का उपयोग करना संभव है?
- 29. क्या सी के साथ ईजिन का उपयोग करना संभव है?
- 30. क्या हैकिंटोश के साथ आईफोन ऐप्स विकसित करना संभव है?
div [id = "एक्स"]? निश्चित रूप से बस #x? – bobince
यह चाल है। और यह आसान है। यदि आपके पास समय है, तो कृपया एक jQuery संस्करण लिखें; हालांकि यह अच्छी तरह से काम करता है। –
@bobince वही वही! तो क्यों? StackOverflow कोड ब्लॉक में टिप्पणी के रूप में पिछले # वर्णों के साथ बयान मानता है। बस उस #x का उपयोग करें। – sepehr