आपको Javascript का उपयोग करें और उच्चतम "tabindex" के साथ तत्व पर "keydown" घटना ले सकता है। यदि उपयोगकर्ता "शिफ्ट" कुंजी (event.shiftKey == झूठी) के बिना "टैब" कुंजी (event.keyCode == 9) दबाता है तो बस सबसे कम tabindex के साथ तत्व पर फ़ोकस सेट करें।
फिर आप भी सबसे कम tabindex साथ तत्व के लिए रिवर्स में एक ही बात करने की ज़रूरत होगी। इस तत्व के लिए "कीडाउन" घटना कैप्चर करें। यदि उपयोगकर्ता "टैब" कुंजी (event.keyCode == 9) को "Shift" कुंजी (event.shiftKey == true) के साथ दबाता है तो उच्चतम tabindex के साथ तत्व पर फ़ोकस सेट करें।
यह प्रभावी ढंग से पता बार को टैब कुंजी का उपयोग करके ध्यान केंद्रित करने से रोक देगा। मैं अपने वर्तमान प्रोजेक्ट में इस तकनीक का उपयोग कर रहा हूं।
उचित कुंजी संयोजन दबाए जाने पर कीडाउन ईवेंट को रद्द करना न भूलें! JQuery के साथ यह "event.preventDefault()" है। मानक जावास्क्रिप्ट में, मेरा मानना है कि आप बस "झूठी वापसी" करते हैं।
यहाँ एक JQuery से लदी टुकड़ा मैं उपयोग कर रहा हूँ है ...
$('#dos-area [tabindex=' + maxTabIndex + ']').on('keydown', function (e) {
if (e.keyCode == 9 && e.shiftKey == false) {
e.preventDefault();
$('#dos-area [tabindex=1]').focus();
}
});
$('#dos-area [tabindex=1]').on('keydown', function (e) {
if (e.keyCode == 9 && e.shiftKey == true) {
e.preventDefault();
$('#dos-area [tabindex=' + maxTabIndex + ']').focus();
}
});
यह भी ध्यान रखें कि tabindex की स्थापना = 0 जिस क्रम में बातें ध्यान केंद्रित कर रहे पर अवांछनीय परिणाम है। मुझे हमेशा याद है (मेरे उद्देश्यों के लिए) कि tabindex एक 1-आधारित सूचकांक है।
स्रोत
2014-08-23 17:19:59
करने के लिए कॉल के बाद इसे जोड़ने मैं इसे अकेले छोड़ना होगा । एक ऐप एक पॉपअप विंडो में अपना ऐप शुरू करना एक आसान समाधान है। फिर आप 'location = no' के माध्यम से पता फ़ील्ड को छुपा सकते हैं। –