2010-02-25 8 views
10

मैंने इनपुट फ़ील्ड के लिए एक फॉर्म में टैब इंडेक्स परिभाषित किया है। इनपुट फ़ील्ड के माध्यम से टैबबिंग करते समय सबमिट बटन कभी फोकस नहीं कर रहा है, पृष्ठ पर किसी भिन्न रूप में कुछ अन्य इनपुट फ़ील्ड फोकस प्राप्त करते हैं। वे सभी 3 से अधिक टैब इंडेक्स हैं। कैसे आते हैं?सबमिट बटन को ध्यान केंद्रित नहीं किया गया है, भले ही tabindex ठीक से सेट हो

<form action="subscription.php" name="subscribe" method="post" onsubmit="return isValidEmailAndEqual()"> 
<p id="formlabel">E-mail</p> <input type="text" name="email1" tabindex=1> 

<br/> 
<p id="formlabel">Repeat e-mail</p> <input type="text" name="email2" tabindex=2> <br/> 
<input id="inputsubmit" type="submit" value="Subscribe" tabindex=3> 
</form> 

सीएसएस:

input { 
    background-color : #333; 
    border: 1px solid #EEE; 
    color: #EEE; 
    margin-bottom: 6px; 
    margin-top: 4px; 
    padding: 1px; 
    width : 200px; 
} 

#inputsubmit { 
    background-color : #d7e6f1; 
    border: 1px solid #EEE; 
    color: #0000ff; 
    margin-bottom: 6px; 
    margin-top: 4px; 
    padding: 1px; 
    width : 200px; 
} 

#inputsubmit:hover { 
    cursor: pointer; cursor: hand; 
    background-color : #d7e6f1; 
    border: 1px solid #0000ff; 
    color: #0000ff; 
    margin-bottom: 6px; 
    margin-top: 4px; 
    padding: 1px; 
    width : 200px; 
} 

p#formlabel{ 
    width: 100; 
} 
+0

मैंने आपके कोड की कोशिश की है और यह "टैब" जैसा होना चाहिए। हो सकता है कि आपके पृष्ठ में कुछ और सही टैब-ऑर्डर के साथ हस्तक्षेप कर रहा हो? – Select0r

+0

आपके उत्तर के लिए धन्यवाद! खैर, यह निश्चित रूप से (फ़ायरफ़ॉक्स का उपयोग करके) काम नहीं करता है। क्या यह मेरी स्टाइल शीट के साथ कुछ करने के लिए हो सकता है? मैंने अपनी स्टाइल शीट के साथ अपना प्रश्न अपडेट किया। उदाहरण के लिए मैं होवरिंग-चीजें कर रहा हूं, क्या इसका कोई प्रभाव हो सकता है? – Nicsoft

उत्तर

10

यह एक मैक 'फीचर' है जो आपको केवल डिफ़ॉल्ट रूप से इनपुट बॉक्स और सूचियों को टैब करने देता है।

http://support.mozilla.com/en-US/kb/Pressing+Tab+key+does+not+select+menus+or+buttons

फ़ायरफ़ॉक्स मैक पर प्रतियां इस डिफ़ॉल्ट ओएस व्यवहार: सभी नियंत्रण के माध्यम से टैब एक उन्नत विकल्प है।

+3

सफारी पर भी होता है। मुझे लगता है कि यह एक मैक चीज है - और फिर यह है कि ब्राउज़र ओएस वरीयता का पालन करता है या नहीं। मैवरिक्स में कीबोर्ड सेटिंग्स पर जाकर और फिर पूर्ण कीबोर्ड एक्सेस के तहत "सभी नियंत्रण" को सक्षम करने के लिए मेरे लिए काम किया। – awidgery

0

आप टैब अनुक्रमणिका परिभाषित करने के लिए नहीं है, आप के रूप में अच्छी उन्हें दे सकता है - जब तक आप जब वे के अनुसार क्रमबद्ध करने के उनमें से प्राकृतिक आदेश संशोधित करना चाहते हैं उनकी रचना उन्हें पूरी तरह से बाहर निकालने का प्रयास करें और देखें कि यह आपकी पसंद के लिए अधिक काम करता है या नहीं।

+0

वास्तव में मेरे पास पहले परिभाषित कोई tabindexes नहीं था। लेकिन चूंकि सबमिट बटन पर टैब करना संभव नहीं था, इसलिए मैंने सोचा कि मुझे टैबिंडेक्स जोड़ना था। लेकिन यह अभी भी मदद नहीं की। मैंने अपने स्टाइल शीट डेटा के साथ अपना प्रश्न अपडेट किया, कम से कम इसका हिस्सा ... पता नहीं है कि क्या मायने रखता है? – Nicsoft

+0

यह फ़ायरफ़ॉक्स और क्रोम दोनों में मेरे लिए केंद्रित है - क्या आपको लगता है कि शायद आप इसे स्पष्ट रूप से नहीं देख सकते हैं? '#inputsubmit: focus' के लिए तीसरी शैली जोड़ने का प्रयास करें और देखें कि यह काम करता है या नहीं। – casraf

+0

मैं वास्तव में देख सकता हूं कि एक अलग रूप में एक और इनपुट फ़ील्ड फोकस प्राप्त कर रहा है। उस इनपुट फ़ील्ड में कर्सर चमक रहा है। मैंने #inputsubmit जोड़ने की कोशिश की: फोकस शैली, लेकिन टैबबिंग के दौरान यह ट्रिगर नहीं किया गया है। मैंने सफारी पर भी कोशिश की, लेकिन कोई भाग्य नहीं। मैक पर बैठकर, लेकिन मुझे कोई फर्क नहीं पड़ता है ... – Nicsoft

4

ठीक है, देखते हैं। मैंने फ़ायरफ़ॉक्स (मैक, विंडोज), सफारी (मैक) और आईई (विंडोज) में कोड के ऊपर कोशिश की है। जब

<button name="thename" type="submit">Subscribe</button> 

या

<input id=\"inputsubmit\" type=\"submit\" value=\"Subscribe\"> 

का उपयोग कर प्रपत्र (एक ही परिणाम) प्रस्तुत करने के लिए

: यहाँ मेरी निष्कर्ष हैं

  • एफएफ (जीत) - जब टैब, फोकस बटन
  • एफएफ (मैक) - टैबबिंग करते समय, फोकस नहीं है बटन मारना
  • सफारी (मैक) - टैबबिंग करते समय, फोकस बटन को मार नहीं रहा है।
  • आईई (विन) - टैबबिंग करते समय, बटन हर समय किसी प्रकार के फोकस में प्रतीत होता है और बटन को टैबबिंग करते समय कुछ अतिरिक्त फोकस होगा।
  • सभी के लिए, जब फ़ॉर्म के अंदर एक आइटम फोकस करता है तो सबमिट बटन को "क्लिक" करने के लिए बस एंटर दबाएं।

मुझे लगता है कि इस निष्कर्ष पर इस तरह हो गया है:

  1. विभिन्न ब्राउज़र अलग ढंग से व्यवहार। यहां तक ​​कि एक ही ब्राउज़र अलग-अलग ओएस (एफएफ) पर अलग-अलग व्यवहार करता है।

  2. किसी फ़ॉर्म का डिफ़ॉल्ट व्यवहार यह है कि एंटर मारने से फॉर्म में पहले सबमिट बटन का उपयोग करके फॉर्म सबमिट किया जाएगा।

  3. मुझे लगता है कि यह एक पिटी है कि फ़ोकस टैबबिंग करते समय बटन को हिट नहीं करेगा क्योंकि मुझे लगता है कि बहुत से उपयोगकर्ता प्रवेश पर पहुंचने से पहले आइटम पर ध्यान केंद्रित करने की अपेक्षा करते हैं।

या आप क्या कहते हैं ...?

+1

1. मुझे लगता है कि यह ओएस व्यवहार है जो ब्राउजर नहीं है। मैक पर रहते हुए, आप सभी विंडोज संस्करण ब्राउज़र में ध्यान दें, आपको फोकस मिलता है। 2. यह फोकस नहीं कर रहा है - लेकिन किसी फॉर्म के लिए डिफ़ॉल्ट व्यवहार प्रवेश पर है, इसे फ़ॉर्म पर पहले सबमिट बटन के साथ प्रस्तुत करता है। 3. अन्य उपयोगकर्ताओं के बारे में नहीं पता, लेकिन जब मैं ध्यान केंद्रित करता हूं, तो मुझे फॉर्म के साथ पूरा होने पर प्रवेश करने की उम्मीद है। – casraf

+0

2. मैंने आपकी टिप्पणी को दर्शाने के लिए अपना उत्तर अपडेट किया। 3. मैं आमतौर पर बटन पर टैब करता हूं और फिर एंटर दबाता हूं, लेकिन मेरी माँ मुझे बताती है कि मैं अद्वितीय हूं ... – Nicsoft

+0

हाहा। खैर, शायद आप हैं;) यह एक मामूली समस्या है, और चूंकि मेरे पास मैक नहीं है, इसलिए मैं वास्तव में वास्तविक समय नहीं देख सकता हूं - इसलिए मुझे लगता है कि जहां तक ​​मैं आपको कल्पित रूप से आपकी मदद कर सकता हूं। – casraf

9

यह एक मैक ओएस एक्स मुद्दा है।आपका मैक कॉन्फ़िगर किया जा सकता है ताकि आप गैर-टेक्स्टफील्ड तत्वों (उदा। बटन) पर टैब को अनुमति न दें। कीबोर्ड के लिए सिस्टम वरीयताओं में जाकर आप इसे बदल सकते हैं। फिर शॉर्टकट टैब पर क्लिक करें और नीचे देखें और सभी नियंत्रणों पर ध्यान केंद्रित करने के लिए विकल्प का चयन करें। अब आप मैक ओएस के सभी बटनों के अलावा सफारी और फ़ायरफ़ॉक्स पर बटनों पर ध्यान केंद्रित करने में सक्षम होना चाहिए।

अपने मैक पर सेटिंग को तेज़ी से बदलने के लिए, CTRL + F7 दबाएं (या यदि आप मैक कीबोर्ड का उपयोग कर रहे हैं, तो फ़ंक्शन कुंजी दबाकर CTRL + F7 दबाएं)।