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

JavaScript focus() मेथड: एलिमेंट पर फोकस सेट करें

HTMLElement.focus() मेथड निर्दिष्ट एलिमेंट पर फोकस सेट करता है, यदि वह फोकसेबल है (इनपुट, बटन, लिंक, tabindex वाले एलिमेंट्स)। यह UX सुधार के लिए महत्वपूर्ण है।

उदाहरण

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style> 
    body { font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; padding: 20px; } 
    .sample { font-size: 18px; font-weight: 500; padding: 10px; border: 2px solid #ccc; border-radius: 4px; width: 300px; } 
    .sample:focus { border-color: #007bff; box-shadow: 0 0 0 3px rgba(0,123,255,0.25); outline: none; } 
    button { padding: 10px 20px; background: #007bff; color: white; border: none; border-radius: 4px; cursor: pointer; margin-top: 10px; } 
</style> </head> <body> 
<h1>JavaScript focus() मेथड</h1> 
<input type="text" class="sample" placeholder="यहां क्लिक करें या बटन दबाएं" /> 
<br><br> 
<button class="Btn">इनपुट पर फोकस करें</button> 
<h3>ऊपर दिए गए बटन पर क्लिक करके इनपुट फील्ड पर फोकस सेट करें</h3> 
<script> 
    const sampleEle = document.querySelector(".sample"); 
    document.querySelector(".Btn").addEventListener("click", () => { 
        sampleEle.focus(); 
    }); 
</script> </body> </html>

आउटपुट

बटन क्लिक करने पर इनपुट फील्ड फोकस प्राप्त करता है (बॉर्डर नीला होता है, कीबोर्ड इनपुट तैयार)।

फोकस से संबंधित महत्वपूर्ण मेथड्स

मेथड/प्रॉपर्टीविवरण
element.focus()एलिमेंट पर फोकस सेट करता है
element.blur()एलिमेंट से फोकस हटाता है
element.autofocusHTML एट्रिब्यूट: पेज लोड पर ऑटो फोकस
document.activeElementवर्तमान में फोकस्ड एलिमेंट लौटाता है
document.hasFocus()डॉक्यूमेंट में फोकस है या नहीं

उन्नत उपयोग

// 1. फोकस के साथ कर्सर अंत में रखें
input.focus();
input.setSelectionRange(input.value.length, input.value.length);

// 2. फोकस इवेंट लिसनर
input.addEventListener("focus", () => console.log("फोकस प्राप्त"));
input.addEventListener("blur", () => console.log("फोकस खोया"));

// 3. फोकस ट्रैप (मोडल के लिए)
function trapFocus(element) {
    const focusable = element.querySelectorAll('button, input, select, textarea, a[href], [tabindex]:not([tabindex="-1"])');
    const first = focusable[0];
    const last = focusable[focusable.length - 1];
    
    element.addEventListener('keydown', e => {
        if (e.key === 'Tab') {
            if (e.shiftKey && document.activeElement === first) {
                e.preventDefault(); last.focus();
            } else if (!e.shiftKey && document.activeElement === last) {
                e.preventDefault(); first.focus();
            }
        }
    });
}

एक्सेसिबिलिटी नोट

फोकस प्रबंधन WCAG अनुपालन के लिए महत्वपूर्ण है। सुनिश्चित करें कि फोकस इंडिकेटर दृश्यमान हों और टैब ऑर्डर तार्किक हो।

  1. जावास्क्रिप्ट में BigInt जावास्क्रिप्ट में BigInt

    BigInt एक बिल्ट-इन ऑब्जेक्ट है जिसका उपयोग 253 - 1 से बड़ी पूर्ण संख्याओं को दर्शाने के लिए किया जाता है। जावास्क्रिप्ट में BigInt लागू करने के लिए निम्नलिखित कोड है: उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name=&q

  1. WebDriver click() बनाम JavaScript click() WebDriver click() बनाम JavaScript click()

    हम वेबड्राइवर क्लिक और जावास्क्रिप्ट क्लिक के साथ एक लिंक पर क्लिक कर सकते हैं। सेलेनियम वेबड्राइवर लिंक के क्लिक के लिए हम लिंक टेक्स्ट और पार्शियल लिंक टेक्स्ट लोकेटर का उपयोग कर सकते हैं। हम क्लिक करने के लिए driver.findElement(By.linkText()) और driver.findElement(By.partialLinkText()) मेथड्स का

  1. हल: javascript:void(0) त्रुटि हल: javascript:void(0) त्रुटि

    कुछ कंप्यूटर उपयोगकर्ता इंटरनेट ब्राउज़ करते समय javascript: void(0) त्रुटि का सामना कर सकते हैं। हालांकि यह एक बहुत ही महत्वपूर्ण त्रुटि नहीं है, लेकिन इसका सामना करना निश्चित रूप से परेशान करने वाला है। जब आप javascript: void(0) त्रुटि का सामना करते हैं, तो यह सबसे अधिक संभावना आपके ब्राउज़र से उत