$lang['tuto'] = "ट्यूटोरियल"; ?> जावास्क्रिप्ट

जावास्क्रिप्ट मेसेजिंगचा वापर करून विक्समध्ये ड्रॉपडाउन-चालित पीडीएफ URL समाकलित करणे

Temp mail SuperHeros
जावास्क्रिप्ट मेसेजिंगचा वापर करून विक्समध्ये ड्रॉपडाउन-चालित पीडीएफ URL समाकलित करणे
जावास्क्रिप्ट मेसेजिंगचा वापर करून विक्समध्ये ड्रॉपडाउन-चालित पीडीएफ URL समाकलित करणे

Wix लायब्ररी साइटवर PDF दर्शक कार्यक्षमता वाढवणे

सार्वजनिक लायब्ररीच्या वेबसाइटवर वापरकर्ता अनुभव सुधारण्यासाठी पीडीएफ फायलींचे विस्तृत संग्रहण आयोजित आणि वापरकर्ता-अनुकूल पद्धतीने प्रदर्शित करणे महत्वाचे आहे. अभ्यागतांना पीडीएफ म्हणून संग्रहित केलेल्या जुन्या वर्तमानपत्रांसारख्या ऐतिहासिक नोंदींवर अखंड प्रवेश देणे हे ध्येय आहे. या प्रकल्पात, Wix, Velo आणि HTML एम्बेड घटकाचा वापर मजबूत प्रणालीचा पाया तयार करतो.

Wix चे प्लॅटफॉर्म iframes द्वारे एम्बेड केलेल्या घटकांना समर्थन देते, वापरकर्त्यांना PDF दर्शकांसारखे परस्परसंवादी घटक जोडण्याची परवानगी देते. हा PDF दर्शक iframe वापरून एम्बेड केलेला आहे आणि सध्या, एक स्थिर URL कोणता दस्तऐवज प्रदर्शित केला जातो हे परिभाषित करते. तथापि, सुरळीत अनुभवासाठी वापरकर्ता इनपुटवर आधारित PDF फाइल डायनॅमिकली बदलण्याची गरज आहे.

वापरकर्त्यांना दोन ड्रॉपडाउनमधून एक वर्ष आणि एक महिना निवडण्याची परवानगी देणे हे आव्हान आहे, जे नंतर प्रदर्शित केलेल्या PDF दस्तऐवजात बदल घडवून आणेल. यामध्ये iframe शी संवाद साधण्यासाठी JavaScript मेसेजिंग समाकलित करणे, ड्रॉपडाउन निवडीनुसार बदलण्यासाठी डॉक्युमेंटची URL सक्षम करणे समाविष्ट आहे.

हा दृष्टिकोन केवळ असंख्य स्थिर Wix पृष्ठांची आवश्यकता कमी करत नाही तर लायब्ररीच्या PDF संग्रहणात प्रवेश देखील सुलभ करतो. खाली, आम्ही Velo फ्रेमवर्क आणि JavaScript वापरून याची अंमलबजावणी करण्यासाठी आवश्यक असलेल्या पायऱ्या आणि उपाय एक्सप्लोर करतो.

आज्ञा वापराचे उदाहरण
PSPDFKit.load() ही पद्धत विशिष्ट कंटेनरमध्ये PSPDFKit PDF दर्शक सुरू करते. ते प्रदान केलेल्या URL वरून PDF फाइल लोड करते, ज्यामुळे ती एम्बेड घटकामध्ये दृश्यमान होते. हे PSPDFKit च्या JavaScript लायब्ररीसाठी विशिष्ट आहे, जे PDF दस्तऐवज एम्बेड करण्यासाठी आणि पाहण्यासाठी तयार केले आहे.
postMessage() मूळ विंडो आणि एम्बेडेड iframe दरम्यान संवाद साधण्यासाठी वापरले जाते. या संदर्भात, ते मुख्य पृष्ठावरून iframe वर संदेश पाठवते, ज्यामुळे iframe ला त्याची सामग्री (PDF URL) ड्रॉपडाउन निवडींवर आधारित अपडेट करता येते.
window.addEventListener("message") postMessage() द्वारे पाठवलेले संदेश ऐकण्यासाठी हा इव्हेंट श्रोता iframe मध्ये जोडला जातो. प्राप्त डेटाच्या आधारे आयफ्रेममध्ये नवीन PDF दस्तऐवज डायनॅमिकपणे लोड करण्यासाठी संदेशावर प्रक्रिया करते.
event.data मेसेज इव्हेंट हँडलरमध्ये, event.data मध्ये पॅरेंट विंडोमधून पाठवलेला डेटा असतो. या प्रकरणात, त्यात PSPDFKit व्ह्यूअरमध्ये लोड करण्यासाठी निवडलेल्या PDF फाइलची URL समाविष्ट आहे.
document.getElementById() ही DOM मॅनिप्युलेशन पद्धत त्याच्या ID द्वारे HTML घटक पुनर्प्राप्त करते. स्क्रिप्टला PDF URL अपडेटसाठी निवडलेले वर्ष आणि महिना निर्धारित करण्यास अनुमती देऊन, ड्रॉपडाउन घटकांमधून वापरकर्ता इनपुट कॅप्चर करण्यासाठी याचा वापर केला जातो.
DOMContentLoaded DOM पूर्णपणे लोड झाल्यानंतरच JavaScript कार्यान्वित होईल याची खात्री देणारा कार्यक्रम. DOM घटक अस्तित्वात येण्याआधी प्रवेश करण्याचा प्रयत्न करताना हे त्रुटींना प्रतिबंधित करते.
addEventListener("change") हा कार्यक्रम श्रोता कोणत्याही बदलांसाठी ड्रॉपडाउन घटकांचे निरीक्षण करतो. जेव्हा वापरकर्ता वेगळे वर्ष किंवा महिना निवडतो, तेव्हा फंक्शन PDF URL अपडेट करण्यासाठी आणि संबंधित दस्तऐवज लोड करण्यासाठी ट्रिगर केले जाते.
template literals टेम्प्लेट लिटरल (बॅकटिकने बंद केलेले) व्हेरिएबल्सला स्ट्रिंगमध्ये एम्बेड करण्याची परवानगी देतात, ज्यामुळे निवडलेल्या PDF साठी डायनॅमिकली URL तयार करणे सोपे होते. उदाहरणार्थ: `https://domain.tld/${year}_${month}_etc.pdf`.
container: "#pspdfkit" PSPDFKit इनिशियलायझेशनमध्ये, कंटेनर HTML घटक (आयडीद्वारे) निर्दिष्ट करतो जेथे PDF दर्शक प्रस्तुत केला जाईल. पृष्ठावर PDF कोठे प्रदर्शित केले जाईल हे परिभाषित करण्यासाठी हे आवश्यक आहे.

Wix मध्ये ड्रॉपडाउन निवडीसह डायनॅमिक पीडीएफ लोडिंग

या सोल्यूशनमध्ये, एम्बेडेड iFrame मध्ये प्रदर्शित केलेल्या PDF फाइलची URL डायनॅमिकरित्या सुधारण्यासाठी आम्ही Wix पृष्ठावरील ड्रॉपडाउन घटकांची जोडी वापरतो. संग्रहित वृत्तपत्र PDF मध्ये सहज प्रवेश प्रदान करू पाहणाऱ्या सार्वजनिक ग्रंथालयांसाठी ही प्रणाली विशेषतः उपयुक्त आहे. कोर कार्यक्षमता द्वारे समर्थित आहे JavaScript संदेशन, जे ड्रॉपडाउनमधून वापरकर्त्याच्या निवडी एम्बेड केलेल्या PDF दर्शकाकडे पाठवते. PSPDFKit व्ह्यूअरचा वापर iFrame मध्ये PDF रेंडर करण्यासाठी केला जातो आणि आम्ही वापरकर्त्याच्या वर्ष आणि महिन्याच्या निवडीच्या आधारावर URL बदलून दर्शकांना हाताळतो. हे एकाधिक स्थिर Wix पृष्ठे तयार न करता मोठ्या संग्रहणांना पृष्ठभाग देण्यासाठी एक सुव्यवस्थित मार्ग प्रदान करते.

पहिला ड्रॉपडाउन वर्ष निवडतो आणि दुसरा ड्रॉपडाउन महिना निवडतो. जेव्हा वापरकर्ता दोन्ही निवडतो, तेव्हा सिस्टम संबंधित PDF फाइलसाठी योग्य URL तयार करते. द PSPDFKit.load() पद्धत यासाठी मध्यवर्ती आहे, कारण ती अद्यतनित URL वर आधारित iFrame मध्ये नवीन PDF लोड करते. ही पद्धत PSPDFKit लायब्ररीचा भाग आहे, जी पृष्ठावर बाह्य स्क्रिप्टद्वारे एम्बेड केलेली आहे. द पोस्ट मेसेज() पर्यायी सोल्युशनमध्ये API देखील महत्त्वपूर्ण आहे, जे मूळ पृष्ठ आणि iframe दरम्यान संदेश पाठविण्यास अनुमती देते. iframe वर नवीन PDF URL असलेला संदेश पाठवून, PDF दर्शक गतिमानपणे अद्यतनित केला जातो.

जेव्हा DOM पूर्णपणे लोड केले जाते तेव्हाच स्क्रिप्ट चालते याची खात्री करण्यासाठी, आम्ही वापरतो DOMContentLoaded कार्यक्रम हे सुनिश्चित करते की ड्रॉपडाउन घटक आणि PSPDFKit कंटेनर स्क्रिप्टमध्ये प्रवेश करण्यायोग्य आहेत. आम्ही प्रत्येक ड्रॉपडाउनमध्ये इव्हेंट श्रोते देखील जोडतो. जेव्हा वापरकर्ता एक वर्ष किंवा महिना निवडतो, तेव्हा संबंधित इव्हेंट श्रोता निवड कॅप्चर करतो आणि योग्य URL सह PDF दर्शक रीलोड करण्यासाठी फंक्शन कॉल करतो. हे एका साध्या फंक्शनद्वारे हाताळले जाते जे ड्रॉपडाउनमधील निवडलेल्या मूल्यांमधून URL तयार करण्यासाठी टेम्पलेट लिटरल वापरते. ही पद्धत केवळ अंमलात आणण्यास सोपी नाही तर उच्च मॉड्यूलर देखील आहे, ज्यामुळे नवीन संग्रहण जोडले गेल्याने सोपे अद्यतने मिळू शकतात.

दुसऱ्या पध्दतीमध्ये, आम्ही वापरतो पोस्ट मेसेज() मूळ पृष्ठ आणि iFrame दरम्यान संवाद साधण्यासाठी. मूळ पृष्ठ ड्रॉपडाउन बदलांसाठी ऐकते आणि iFrame ला नवीन PDF URL असलेला संदेश पाठवते, जो इव्हेंट श्रोता वापरून संदेश प्राप्त करतो. आयफ्रेम थेट मूळ पृष्ठाच्या DOM शी संवाद साधू शकत नाही अशा वेगळ्या वातावरणाशी व्यवहार करताना ही पद्धत उपयुक्त आहे. दोन्ही पद्धती एम्बेड केलेल्या पीडीएफ व्ह्यूअरची सामग्री डायनॅमिकरित्या अद्यतनित करण्याचे कार्यक्षम मार्ग प्रदान करतात, एकाधिक स्थिर पृष्ठांची आवश्यकता कमी करतात आणि वापरकर्ता-अनुकूल ब्राउझिंग अनुभव देतात.

Wix मध्ये पीडीएफ व्ह्यूअरसाठी ड्रॉपडाउन-आधारित URL स्विचिंगची अंमलबजावणी करणे

JavaScript आणि Velo फ्रेमवर्क वापरून फ्रंटएंड स्क्रिप्ट

// HTML structure for the dropdowns and embed element
<div>
  <label for="yearSelect">Select Year:</label>
  <select id="yearSelect">
    <option value="">--Year--</option>
    <option value="1962">1962</option>
    <option value="1963">1963</option>
    <!-- Add other years dynamically or manually -->
  </select>
  <label for="monthSelect">Select Month:</label>
  <select id="monthSelect">
    <option value="">--Month--</option>
    <option value="January">January</option>
    <option value="February">February</option>
    <!-- Add other months dynamically or manually -->
  </select>
</div>
// Embedded PDF viewer in iframe
<div id="pspdfkit" style="width: 100%; height: 100%; max-width: 1920px;"></div>
<script src="https://cdn.cloud.pspdfkit.com/pspdfkit-web@2024.5.2/pspdfkit.js"></script>
// JavaScript to update URL based on dropdown selection
<script>
document.addEventListener("DOMContentLoaded", () => {
  const yearSelect = document.getElementById("yearSelect");
  const monthSelect = document.getElementById("monthSelect");
  function loadPDF(year, month) {
    if (year && month) {
      const url = `https://domain.tld/${year}_${month}_etc.pdf`;
      PSPDFKit.load({
        container: "#pspdfkit",
        document: url,
      }).catch((error) => {
        console.error("Failed to load PDF:", error);
      });
    }
  }
  yearSelect.addEventListener("change", () => {
    loadPDF(yearSelect.value, monthSelect.value);
  });
  monthSelect.addEventListener("change", () => {
    loadPDF(yearSelect.value, monthSelect.value);
  });
});
</script>

पर्यायी दृष्टीकोन: iFrame कम्युनिकेशनसाठी PostMessage API वापरणे

iframe आणि मूळ दस्तऐवज यांच्यातील चांगल्या पृथक्करणासाठी postMessage API वापरून फ्रंटएंड स्क्रिप्ट

Wix आणि JavaScript मेसेजिंगसह PDF संग्रहण सुलभता वाढवणे

Wix मध्ये एम्बेडेड पीडीएफ URL डायनॅमिकरित्या सुधारित करण्यासाठी ड्रॉपडाउन घटक वापरताना आणखी एक महत्त्वाचा विचार म्हणजे त्यांच्यामधील परस्परसंवाद सुनिश्चित करणे. iFrame आणि मुख्य पृष्ठ कार्यक्षम आहे. JavaScript मेसेजिंग आम्हाला या दोन घटकांमध्ये डेटा पाठविण्याची अनुमती देत ​​असताना, निवड अद्यतने कशी ट्रिगर करते हे ऑप्टिमाइझ करून कार्यप्रदर्शन आणि वापरकर्ता अनुभव सुधारला जाऊ शकतो. हे इनपुट डिबाउन करून केले जाऊ शकते, याचा अर्थ प्रत्येक बदलाऐवजी वापरकर्त्याने त्यांची निवड पूर्ण केल्यानंतर सिस्टम पीडीएफ व्ह्यूअरला अपडेट करते.

अजून एक पैलू जो अजून कव्हर केलेला नाही क्रॉस-ओरिजिन रिसोर्स शेअरिंग (CORS). PDFs बाह्य सर्व्हरवर (जसे की डिजिटल महासागर) होस्ट केलेले असल्याने, Wix डोमेनमधून प्रवेशास अनुमती देण्यासाठी सर्व्हर कॉन्फिगर केले आहे याची खात्री करणे महत्त्वाचे आहे. सर्व्हरची CORS सेटिंग्ज योग्यरित्या कॉन्फिगर केलेली नसल्यास, PDF दर्शक दस्तऐवज लोड करू शकणार नाही, परिणामी त्रुटी येऊ शकतात. पीडीएफ फाइल्स होस्ट करणाऱ्या सर्व्हरवर योग्य CORS शीर्षलेख दोन प्लॅटफॉर्ममधील अखंड एकत्रीकरणासाठी आवश्यक आहेत.

याव्यतिरिक्त, लोडिंग वेळा कमी करण्यासाठी तुम्ही वारंवार ऍक्सेस केलेल्या PDF फाइल्स प्रीलोड करून सिस्टम वाढवू शकता. प्रीलोडिंग धोरणे उपयोगी ठरतात जेव्हा वापरकर्ता अनेक महिने किंवा वर्षांमध्ये स्विच करण्याची शक्यता असते. या फायली ब्राउझरच्या कॅशेमध्ये संचयित केल्याने, त्यानंतरचे दस्तऐवज लोड जलद होतील, वापरकर्ता अनुभव अधिक सुलभ होईल. हे सेवा कामगार किंवा इतर कॅशिंग यंत्रणा वापरून केले जाऊ शकते, जे वापरकर्ता उपलब्ध पर्यायांमधून नेव्हिगेट करत असताना PDF प्रीलोड करण्यासाठी सेट केले जाऊ शकते.

Wix मधील डायनॅमिक PDF एम्बेड्सबद्दल वारंवार विचारले जाणारे प्रश्न

  1. मी Wix मध्ये ड्रॉपडाउन निवडक कसे जोडू?
  2. तुम्ही Wix संपादक वापरून ड्रॉपडाउन घटक जोडू शकता आणि अद्वितीय आयडी नियुक्त करून त्यांना नियंत्रित करण्यासाठी JavaScript वापरू शकता. ड्रॉपडाउन घटक पीडीएफ URL मध्ये बदल घडवून आणतील document.getElementById().
  3. काय करते आज्ञा करू?
  4. पीडीएफ व्ह्यूअर रेंडर करण्यासाठी आणि त्यात विशिष्ट पीडीएफ फाइल लोड करण्यासाठी पद्धत जबाबदार आहे. ही पद्धत PSPDFKit लायब्ररीचा भाग आहे जी पीडीएफ फाइल्स गतिकरित्या प्रदर्शित करण्यासाठी वापरली जाते.
  5. मी वापरू शकतो postMessage() क्रॉस-ओरिजिन कम्युनिकेशनसाठी?
  6. होय, द postMessage() API विशेषत: भिन्न मूळ, जसे की मूळ पृष्ठ आणि iFrame दरम्यान संप्रेषण करण्यासाठी डिझाइन केलेले आहे, जे या अंमलबजावणीसाठी महत्त्वपूर्ण आहे.
  7. पीडीएफ लोड करताना मी त्रुटी कशा हाताळू?
  8. ए जोडून तुम्ही त्रुटी हाताळू शकता ला ब्लॉक करा लोडिंग प्रक्रियेदरम्यान होणाऱ्या कोणत्याही त्रुटी पकडण्यासाठी आणि योग्य त्रुटी संदेश प्रदर्शित करण्यासाठी कार्य.
  9. मला CORS साठी माझा सर्व्हर कॉन्फिगर करण्याची आवश्यकता आहे का?
  10. होय, जर तुमची पीडीएफ वेगळ्या डोमेनवर होस्ट केलेली असेल, तर तुम्हाला सर्व्हर योग्यरित्या सेट केले आहे याची खात्री करणे आवश्यक आहे. Wix साइटला कागदपत्रांमध्ये प्रवेश करण्याची परवानगी देण्यासाठी शीर्षलेख.

डायनॅमिक पीडीएफ डिस्प्लेवरील अंतिम विचार

हे समाधान एका पृष्ठावर PDF फाइल्सचे मोठे संग्रहण प्रदर्शित करण्याची प्रक्रिया सुलभ करते. वर्ष आणि महिना निवडण्यासाठी दोन ड्रॉपडाउन घटक वापरून, आम्ही एकाधिक Wix पृष्ठे तयार न करता PDF दर्शक गतिमानपणे अद्यतनित करू शकतो.

ड्रॉपडाउन आणि iFrame दरम्यान JavaScript मेसेजिंगसह Velo फ्रेमवर्कची लवचिकता एकत्र करून, ही पद्धत ऐतिहासिक डेटा आयोजित आणि सादर करण्याचा एक कार्यक्षम मार्ग प्रदान करते. हे लायब्ररी संग्रहण सारख्या सार्वजनिक-फेसिंग वेबसाइटसाठी स्केलेबल आणि वापरकर्ता-अनुकूल दोन्ही आहे.

Wix आणि JavaScript सह डायनॅमिक पीडीएफ लोडिंगसाठी स्रोत आणि संदर्भ
  1. Velo फ्रेमवर्क वापरून Wix वर HTML iFrame घटक आणि JavaScript मेसेजिंगसह काम करण्याबद्दल तपशीलवार दस्तऐवज प्रदान करते. भेट द्या Wix विकसक डॉक्स अधिक माहितीसाठी.
  2. PSPDFKit चे अधिकृत दस्तऐवज, त्यांच्या JavaScript लायब्ररीचा वापर करून iFrame मध्ये PDF एम्बेड आणि लोड कसे करायचे याचे तपशील. येथे प्रवेश करा: PSPDFKit दस्तऐवजीकरण .
  3. डिजिटल महासागर सारख्या बाह्य सर्व्हरवरून योग्य पीडीएफ लोडिंग सुनिश्चित करण्यासाठी क्रॉस-ओरिजिन रिसोर्स शेअरिंग (CORS) लागू करण्यासाठी मार्गदर्शक. आपण येथे अधिक वाचू शकता CORS वर MDN वेब डॉक्स .