ownerDocument प्रॉपर्टी क्या है?
HTML DOM ownerDocument प्रॉपर्टी एक Document ऑब्जेक्ट लौटाती है जो किसी नोड के मालिक दस्तावेज़ को दर्शाता है। चूंकि सभी नोड्स एक दस्तावेज़ से संबंधित होते हैं, यह प्रॉपर्टी किसी भी नोड से उस दस्तावेज़ तक पहुंचने का एक तरीका प्रदान करती है जिसमें वह नोड रहता है।
सिंटैक्स
node.ownerDocument
रिटर्न मान
नोड का मालिक Document ऑब्जेक्ट। दस्तावेज़ नोड के लिए स्वयं, यह null लौटाता है।
उदाहरण
यह उदाहरण एक बटन के मालिक दस्तावेज़ का नोड नाम प्रदर्शित करता है:
<!DOCTYPE html>
<html>
<head>
<style>
html { height: 100%; }
body {
text-align: center;
color: #fff;
background: #ff7f5094;
height: 100%;
}
p { font-weight: 700; font-size: 1.2rem; }
.btn {
background: #0197F6;
border: none;
height: 2rem;
border-radius: 2px;
width: 35%;
margin: 2rem auto;
display: block;
color: #fff;
outline: none;
cursor: pointer;
}
.show { font-size: 1.5rem; }
</style>
</head>
<body>
<h1>DOM ownerDocument प्रॉपर्टी डेमो</h1>
<p>इस नीले बटन का मालिक कौन है?</p>
<button onclick="showOwner()" class="btn">मालिक प्राप्त करें</button>
<div class="show"></div>
<script>
function showOwner() {
var btn = document.querySelector(".btn");
var ownerDoc = btn.ownerDocument;
document.querySelector(".show").innerHTML =
"मालिक दस्तावेज़ नोड नाम: " + ownerDoc.nodeName + " (" + ownerDoc.nodeType + ")";
}
</script>
</body>
</html>
आउटपुट
"मालिक प्राप्त करें" बटन पर क्लिक करने पर, "#document" प्रदर्शित होता है (क्योंकि Document नोड का nodeName "#document" होता है)।
मुख्य उपयोग के मामले
- दस्तावेज़-संदर्भ निर्माण: किसी नोड से दस्तावेज़ प्राप्त करके नए तत्व बनाना (
node.ownerDocument.createElement('div')) - यहdocument.createElement()से सुरक्षित है जब नोड किसी भिन्न दस्तावेज़ (जैसे iframe) से संबंधित हो सकता है। - क्रॉस-डॉक्यूमेंट ऑपरेशन: यदि आपके पास एकाधिक दस्तावेज़ हैं (मुख्य पेज + iframe), तो यह पहचानने में मदद करता है कि नोड किस दस्तावेज़ से संबंधित है।
- लाइब्रेरी/कंपोनेंट कोड: पुन: प्रयोज्य कोड में जो वैश्विक
documentऑब्जेक्ट नहीं मान सकता।
संबंधित प्रॉपर्टीज़
node.ownerDocument === document- मुख्य दस्तावेज़ में नोड्स के लिएtrue।document.defaultView- दस्तावेज़ से संबंधितWindowऑब्जेक्ट प्राप्त करता है।element.getRootNode()- शैडो DOM रूट या दस्तावेज़ लौटाता है।
नोट्स
- केवल पढ़ने योग्य प्रॉपर्टी।
- दस्तावेज़ नोड के लिए (
document.ownerDocument), यहnullलौटाता है। - डिस्कनेक्टेड नोड्स (जो अभी तक दस्तावेज़ में नहीं जोड़े गए) के लिए भी काम करता है - वे उस दस्तावेज़ के स्वामित्व में होते हैं जिसने उन्हें बनाया था।