जावास्क्रिप्ट का उपयोग करके सीएसएस गुण निकालना
HTML दस्तावेज़ से जुड़ी स्टाइलशीट को नेविगेट करना पृष्ठ तत्वों की प्रस्तुति में मूल्यवान अंतर्दृष्टि प्रदान कर सकता है। विशेष रूप से, विशिष्ट सीएसएस गुणों को पढ़ने की क्षमता गतिशील शैली हेरफेर में सहायता कर सकती है।
एक दृष्टिकोण में document.styleSheets ऑब्जेक्ट का मैन्युअल रूप से निरीक्षण करना और शैली नियमों को पार्स करना शामिल है। हालाँकि, यह विधि श्रम-गहन है और बोझिल हो सकती है, खासकर जब विशिष्ट चयनकर्ताओं को लक्षित किया जाता है।
एक अधिक सीधी तकनीक एक अस्थायी तत्व बनाना है जो वांछित चयनकर्ता से मेल खाता है। GetComputedStyle() (आधुनिक ब्राउज़रों के लिए) या currentStyle (इंटरनेट एक्सप्लोरर के लिए) विधियों का उपयोग करके, आप बनाए गए तत्व के लिए किसी भी CSS प्रॉपर्टी के परिकलित मान को पुनः प्राप्त कर सकते हैं।
उदाहरण के लिए, पुनः प्राप्त करने के लिए निम्नलिखित कोड पर विचार करें "लेआउट" वर्ग के साथ
function getStyleProp(elem, prop) {
if (window.getComputedStyle) {
return window.getComputedStyle(elem, null).getPropertyValue(prop);
} else if (elem.currentStyle) {
return elem.currentStyle[prop]; // IE
}
}
window.onload = function () {
var d = document.createElement("div"); // Create div
d.className = "layout"; // Set class = "layout"
alert(getStyleProp(d, "color")); // Get property value
};
वैकल्पिक रूप से, यदि आप किसी इनलाइन शैलियों पर विचार किए बिना स्टाइलशीट से विरासत में मिली सीएसएस संपत्ति को निर्धारित करना चाहते हैं, तो निम्न फ़ंक्शन का उपयोग किया जा सकता है:
function getNonInlineStyle(elem, prop) {
var style = elem.cssText; // Cache the inline style
elem.cssText = ""; // Remove all inline styles
var inheritedPropValue = getStyleProp(elem, prop); // Get inherited value
elem.cssText = style; // Add the inline style back
return inheritedPropValue;
}
इन तकनीकों का लाभ उठाकर, डेवलपर्स तत्वों के सीएसएस गुणों को गतिशील रूप से समायोजित कर सकते हैं, उनकी प्रस्तुति में हेरफेर कर सकते हैं, और पृष्ठ की शैली की गहरी समझ हासिल कर सकते हैं।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3