2009-10-21 2 views
18

मैं जावास्क्रिप्ट में एक वास्तविक टैब कुंजी प्रेस अनुकरण करने की कोशिश कर रहा हूं। मैं अगले तत्व या उस तरह की किसी भी चीज़ पर ध्यान केंद्रित नहीं करना चाहता हूं, मैं बस ऐसा करना चाहता हूं जैसे टैब कुंजी दबा दी गई है।जावास्क्रिप्ट में फायर टैब कीप्रेस घटना?

कारण यह है कि क्योंकि मैं एक फॉर्म जावास्क्रिप्ट क्लास बना रहा हूं जहां मैं टैब की तरह एंटर कुंजी का उपयोग करने में सक्षम होना चाहता हूं। अगर कोई मूल ब्रॉसर स्वत: पूर्ण का उपयोग कर रहा है, तो मुझे चयनित स्वत: पूर्ण प्रतिक्रिया को कैप्चर करने के लिए टैब कुंजी को आग लगाना होगा। अगर मैं अगले इनपुट में जाता हूं तो यह अपने स्वत: पूर्ण चयन को कैप्चर नहीं करेगा और फ़ील्ड को खाली छोड़ देगा।

कोई विचार?

+0

>> मैं अगले तत्व या कि Mhmm ऐसा कुछ पर ध्यान केंद्रित नहीं करना चाहते हैं, लेकिन यह है कि जब हुआ मैं टैब कुंजी दबाता हूं। अगला फोकस करने योग्य तत्व फोकस प्राप्त करता है। –

उत्तर

23

मुझे नहीं लगता कि यह संभव है; एक article about DOM events here ... उल्लेख करता है कि किसी ईवेंट को फायर करने से सुरक्षा कारणों से उपयोगकर्ता कार्रवाई का डिफ़ॉल्ट परिणाम ट्रिगर नहीं होता है; स्क्रिप्ट सीधे उपयोगकर्ता इंटरैक्शन अनुकरण करने में सक्षम नहीं होना चाहिए। वास्तव में एक कुंजीपटल अनुकरण करने की कोशिश करने के बजाय, आपको कुंजीपटल के कारणों (जैसे फ़ील्ड पर फ़ोकस) के व्यवहार को अनुकरण करना होगा। आप शायद ब्राउज़र की मूल स्वत: पूर्ण कार्यक्षमता से बातचीत करने में सक्षम नहीं होंगे, जब तक ब्राउज़र स्पष्ट रूप से ऐसा करने के लिए आपके लिए साधन प्रदान नहीं करता है।

संपादित करें:

भी देखें: [https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-autocomplete] (स्वत: पूर्ण एचटीएमएल विशेषता)

+0

आपका अधिकार, अनुमान लगाओ आप नहीं कर सकते! ** _: (_ ** –

+0

बांध मुझे इसकी आवश्यकता है। मेरे पास एक समान समस्या है .. http://stackoverflow.com/q/33261996/1356321 – Pomster