"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > इंटरसेक्शन ऑब्जर्वर के साथ वेबसाइट का प्रदर्शन बढ़ाना

इंटरसेक्शन ऑब्जर्वर के साथ वेबसाइट का प्रदर्शन बढ़ाना

2024-07-30 को प्रकाशित
ब्राउज़ करें:477

Enhancing Website Performance with Intersection Observer

परिचय

तेज़, अधिक कुशल वेब अनुभव की तलाश में, डेवलपर्स प्रदर्शन को अनुकूलित करने के लिए लगातार नए तरीके खोजते हैं। वेब डेवलपर के शस्त्रागार में एक शक्तिशाली उपकरण इंटरसेक्शन ऑब्जर्वर एपीआई है। यह एपीआई आपको लक्ष्य तत्वों की दृश्यता में परिवर्तन देखने की अनुमति देता है, जिससे आलसी लोडिंग और विलंबित सामग्री लोडिंग जैसी उन्नत रणनीतियों को सक्षम किया जा सकता है। इस ब्लॉग में, हम जानेंगे कि अपनी वेबसाइट के प्रदर्शन को बेहतर बनाने के लिए इंटरसेक्शन ऑब्जर्वर एपीआई का उपयोग कैसे करें।

इंटरसेक्शन ऑब्जर्वर क्या है?

इंटरसेक्शन ऑब्जर्वर एपीआई किसी पूर्वज तत्व के साथ या शीर्ष-स्तरीय दस्तावेज़ के व्यूपोर्ट के साथ लक्ष्य तत्व के प्रतिच्छेदन में परिवर्तनों को अतुल्यकालिक रूप से देखने का एक तरीका प्रदान करता है। यह विशेष रूप से छवियों या अन्य सामग्री को धीरे-धीरे लोड करने के लिए उपयोगी हो सकता है क्योंकि उपयोगकर्ता पृष्ठ को नीचे स्क्रॉल करते हैं।

प्रदर्शन में सुधार के लिए मुख्य उपयोग के मामले

  1. छवियां और आईफ्रेम लोड करने में आलस्य: छवियों और आईफ्रेम को केवल तभी लोड करें जब वे व्यूपोर्ट में प्रवेश करने वाले हों, जिससे प्रारंभिक लोड समय कम हो जाए।
  2. ऑफ-स्क्रीन सामग्री की लोडिंग स्थगित करें: विज्ञापन, वीडियो या भारी स्क्रिप्ट जैसी सामग्री की लोडिंग तब तक स्थगित करें जब तक वे दृश्य में न आ जाएं।
  3. अनंत स्क्रॉलिंग: जैसे ही उपयोगकर्ता पृष्ठ को नीचे स्क्रॉल करता है, अधिक सामग्री लोड करें।
  4. एनालिटिक्स ट्रैकिंग: उपयोगकर्ता सहभागिता विश्लेषण के लिए तत्व कब दिखाई देते हैं, इसे ट्रैक करें।

बुनियादी उपयोग

आइए इंटरसेक्शन ऑब्जर्वर एपीआई के बुनियादी कार्यान्वयन पर गौर करें।

  1. एक इंटरसेक्शन ऑब्जर्वर बनाएं

सबसे पहले, इंटरसेक्शनऑब्जर्वर का एक उदाहरण बनाएं:

let observer = new IntersectionObserver((entries, observer) => {
  entries.forEach(entry => {
    if (entry.isIntersecting) {
      // Perform actions when the element is visible
      entry.target.src = entry.target.dataset.src;
      observer.unobserve(entry.target); // Stop observing after loading
    }
  });
}, {
  root: null, // relative to document viewport
  rootMargin: '0px', // margin around root
  threshold: 0.1 // visible amount of item shown in relation to root
});
  1. अवलोकन के लिए लक्षित तत्व

उन तत्वों का चयन करें जिनका आप अवलोकन करना चाहते हैं और उनका अवलोकन करना शुरू करें:

document.querySelectorAll('img[data-src]').forEach(img => {
  observer.observe(img);
});
  1. आलसी लोडिंग के लिए HTML संरचना

सुनिश्चित करें कि आपकी HTML संरचना डेटा विशेषताओं का उपयोग करके आलसी लोडिंग का समर्थन करती है:

Lazy Loaded Image

उन्नत विन्यास

अधिक नियंत्रण के लिए, आप रूट मार्जिन और थ्रेशोल्ड विकल्पों को समायोजित कर सकते हैं:

  1. रूट मार्जिन: व्यूपोर्ट में प्रवेश करने से पहले सामग्री को थोड़ा प्रीलोड करें।
rootMargin: '100px' // preload 100px before entering viewport
  1. थ्रेसहोल्ड: कॉलबैक ट्रिगर करने से पहले निर्धारित करें कि तत्व का कितना भाग दिखाई देना चाहिए।
threshold: [0.25, 0.5, 0.75, 1] // trigger at 25%, 50%, 75%, and 100% visibility

व्यावहारिक उदाहरण: छवियाँ लोड करने में आलसी

यहाँ छवियों को आलसी लोड करने का एक पूरा उदाहरण दिया गया है:

  1. जावास्क्रिप्ट कोड
document.addEventListener("DOMContentLoaded", function() {
  let lazyImages = document.querySelectorAll("img.lazy");

  let imageObserver = new IntersectionObserver((entries, observer) => {
    entries.forEach(entry => {
      if (entry.isIntersecting) {
        let img = entry.target;
        img.src = img.dataset.src;
        img.classList.remove("lazy");
        observer.unobserve(img);
      }
    });
  });

  lazyImages.forEach(image => {
    imageObserver.observe(image);
  });
});
  1. एचटीएमएल संरचना
Lazy Loaded Image

फ़ायदे

  1. प्रारंभिक लोड समय कम हो गया: केवल उन छवियों और सामग्री को लोड करने से जो व्यूपोर्ट में या उसके पास हैं, प्रारंभिक लोड समय कम हो जाता है।
  2. बेहतर स्क्रॉलिंग प्रदर्शन: ऑफ-स्क्रीन सामग्री की लोडिंग को स्थगित करने से स्क्रॉलिंग आसान हो सकती है।
  3. बेहतर उपयोगकर्ता अनुभव: उपयोगकर्ता केवल वही सामग्री डाउनलोड करते हैं जिसे वे देखने वाले हैं, जिससे अधिक प्रतिक्रियाशील अनुभव प्राप्त होता है।

निष्कर्ष

इंटरसेक्शन ऑब्जर्वर एपीआई को लागू करके, आप अपनी वेबसाइट के प्रदर्शन और उपयोगकर्ता अनुभव को महत्वपूर्ण रूप से बढ़ा सकते हैं। चाहे आप छवियों को लोड करने में आलसी हों, भारी स्क्रिप्ट की लोडिंग को टाल रहे हों, या अनंत स्क्रॉलिंग लागू कर रहे हों, यह एपीआई सामग्री दृश्यता को प्रबंधित करने का एक मजबूत और कुशल तरीका प्रदान करता है। आज ही इंटरसेक्शन ऑब्जर्वर का उपयोग शुरू करें और अपनी वेबसाइट के प्रदर्शन में अंतर देखें!

विज्ञप्ति वक्तव्य यह लेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/koolkamalkishor/enhancing-website-performance-with-intersection-observer-f89?1 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए स्टडी_गोलंग@163.com से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3