जावास्क्रिप्ट में तत्व वर्ग की उपस्थिति का निर्धारण
किसी तत्व की वर्ग विशेषताओं का निरीक्षण करते समय, यह सत्यापित करना अक्सर आवश्यक होता है कि इसमें एक विशिष्ट वर्ग शामिल है या नहीं। प्रदान किया गया कोड किसी तत्व के सटीक वर्ग मान की जांच करने के लिए एक स्विच स्टेटमेंट का उपयोग करता है, लेकिन यह दृष्टिकोण आंशिक मिलान का पता लगाने में विफल रहता है।
इस सीमा को हल करने के लिए, element.classList .contains विधि के उपयोग पर विचार करें। यह विधि एक वर्ग के नाम को एक पैरामीटर के रूप में स्वीकार करती है और एक बूलियन लौटाती है जो तत्व की वर्ग सूची के भीतर उसकी उपस्थिति का संकेत देती है:
element.classList.contains(class);
यह विधि आधुनिक भर में सार्वभौमिक रूप से समर्थित है ब्राउज़र और वर्ग समावेशन की जाँच करने के लिए एक सुसंगत तरीका प्रदान करता है।
वैकल्पिक रूप से, पुराने ब्राउज़र के साथ संगतता के लिए जिनमें .contains पद्धति का अभाव है, आप इसका उपयोग कर सकते हैं IndexOf विधि का निम्नलिखित संशोधित संस्करण:
function hasClass(element, className) { return (' ' element.className ' ').indexOf(' ' className ' ') > -1; }
यह संशोधन सुनिश्चित करता है कि आप आंशिक मिलानों का सटीक रूप से पता लगाते हैं, जब आप जिस वर्ग की तलाश कर रहे हैं वह एक बड़े वर्ग के नाम का हिस्सा है, तो झूठी सकारात्मकताओं से बचें।
इस पद्धति को दिए गए उदाहरण पर लागू करना:
var test = document.getElementById("test"), classes = ['class1', 'class2', 'class3', 'class4']; test.innerHTML = ""; for(var i = 0, j = classes.length; i.contains विधि या संशोधित IndexOf फ़ंक्शन को नियोजित करके, आप विश्वसनीय रूप से यह निर्धारित कर सकते हैं कि ब्राउज़र संगतता या आंशिक मिलान की उपस्थिति की परवाह किए बिना, किसी तत्व में जावास्क्रिप्ट में एक विशिष्ट वर्ग शामिल है या नहीं।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3