Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> HTML

HTML DOM open() मेथड


document.open() मेथड क्या है?

DOM document.open() मेथड एक नया आउटपुट स्ट्रीम खोलता है जो दस्तावेज़ के कंटेंट को साफ़ करता है और नए कंटेंट लिखने के लिए document.write() या document.writeln() की अनुमति देता है। यह प्रभावी रूप से वर्तमान दस्तावेज़ को एक नए, खाली दस्तावेज़ से बदल देता है।

सिंटैक्स

document.open(type, replace)

पैरामीटर

  • type (वैकल्पिक): MIME प्रकार (डिफ़ॉल्ट: "text/html")।
  • replace (वैकल्पिक): यदि true, तो नया दस्तावेज़ इतिहास प्रविष्टि को वर्तमान के स्थान पर प्रतिस्थापित करता है (बैक बटन काम नहीं करेगा)। डिफ़ॉल्ट: false।

उदाहरण

यह उदाहरण दर्शाता है कि कैसे document.open(), document.write(), और document.close() का उपयोग करके पूरे पेज कंटेंट को प्रतिस्थापित किया जाता है:

<!DOCTYPE html>
<html>
<head>
<style>
  body {
    text-align: center;
    color: #fff;
    background: #ff7f5094;
  }
  .btn {
    background: #0197F6;
    border: none;
    height: 2rem;
    border-radius: 2px;
    width: 35%;
    margin: 2rem auto;
    display: block;
    color: #fff;
    outline: none;
    cursor: pointer;
  }
</style>
</head>
<body>
<h1>DOM open() मेथड डेमो</h1>
<button onclick="openMethod()" class="btn">Open() मेथड आज़माएं</button>
<script>
  function openMethod() {
    document.open();
    document.write(`
      <style>
        body { text-align: center; color: #fff; background: #ff7f5094; }
      </style>
      <h1>DOM open() मेथड डेमो</h1>
      <p>नया दस्तावेज़</p>
    `);
    document.close();
  }
</script>
</body>
</html>

आउटपुट

बटन पर क्लिक करने पर, मूल पेज कंटेंट पूरी तरह से नए कंटेंट ("नया दस्तावेज़") से बदल जाता है।

महत्वपूर्ण चेतावनियां

  • विध्वंसक: यह पूरे दस्तावेज़ को मिटा देता है (DOM, इवेंट लिसनर्स, वेरिएबल्स, सब कुछ)।
  • document.close() आवश्यक: लिखने के बाद हमेशा document.close() कॉल करें ताकि ब्राउज़र को पता चले कि लोडिंग पूरी हो गई।
  • इतिहास: डिफ़ॉल्ट रूप से, यह एक नई इतिहास प्रविष्टि बनाता है (बैक बटन मूल पेज पर वापस जाता है)। replace: true के साथ, यह वर्तमान प्रविष्टि को प्रतिस्थापित करता है।
  • लोड इवेंट: नया दस्तावेज़ अपने स्वयं के लोड इवेंट्स फायर करता है।

document.open() बनाम document.write()

मेथड उपयोग
document.open() लेखन के लिए स्ट्रीम खोलता है; मौजूदा कंटेंट साफ़ करता है।
document.write() खुली स्ट्रीम में कंटेंट लिखता है।
document.close() स्ट्रीम बंद करता है; ब्राउज़र को पार्सिंग खत्म करने का संकेत देता है।

आधुनिक विकल्प (सुझाया गया)

document.open()/write() का उपयोग न करें। इसके बजाय उपयोग करें:

  • element.innerHTML या element.textContent आंशिक अपडेट के लिए।
  • document.createElement() + appendChild() संरचित DOM मैनिपुलेशन के लिए।
  • फ्रेमवर्क (React, Vue, Svelte) डिक्लेरेटिव UI अपडेट के लिए।
  • fetch() + DOM अपडेट डायनामिक कंटेंट लोडिंग के लिए।

वैध उपयोग के मामले (दुर्लभ)

  • नए विंडो/पॉपअप में कंटेंट जनरेट करना (var win = window.open(); win.document.open(); win.document.write(...); win.document.close();)।
  • लिगेसी सिस्टम इंटीग्रेशन जहां पूर्ण दस्तावेज़ प्रतिस्थापन आवश्यक है।
  • बुकमार्कलेट्स/डेवलपर टूल्स जो पेज कंटेंट को पूरी तरह से ओवरराइड करते हैं।
  1. HTML DOM fullscreenEnabled() मेथड HTML DOM fullscreenEnabled() मेथड

    HTML DOM fullscreenEnabled() मेथड का उपयोग यह निर्दिष्ट करने के लिए किया जाता है कि वर्तमान दस्तावेज़ के लिए फुलस्क्रीन मोड उपलब्ध है या नहीं। इसका रिटर्न प्रकार बूलियन है और यह एक केवल-पढ़ने योग्य प्रॉपर्टी है। यदि फुलस्क्रीन मोड उपलब्ध है तो true लौटाया जाता है अन्यथा यह false लौटाता है। इसे अपने

  1. HTML DOM writeln() मेथड HTML DOM writeln() मेथड

    HTML DOM writeln() मेथड HTML DOM writeln() उपयोगकर्ता को सीधे एक डॉक्यूमेंट में कई एक्सप्रेशन्स (HTML या JavaScript) लिखने की कार्यक्षमता प्रदान करता है। नोट: यह मेथड एक डॉक्यूमेंट में HTML कोड को ओवरराइट करता है यदि कोई है और आर्ग्यूमेंट्स को एक नई लाइन में जोड़ता है। सिंटैक्स document.write(agr

  1. HTML DOM write() मेथड HTML DOM write() मेथड

    HTML DOM write() मेथड HTML DOM write() उपयोगकर्ता को सीधे एक डॉक्यूमेंट में कई एक्सप्रेशन्स (HTML या JavaScript) लिखने की कार्यक्षमता प्रदान करता है। नोट: यह मेथड एक डॉक्यूमेंट में HTML कोड को ओवरराइट करता है, यदि कोई है और आर्ग्यूमेंट्स को एक नई लाइन में नहीं जोड़ता। सिंटैक्स document.write(argu