यदि आप अपना स्वयं का वेबपृष्ठ लिख रहे हैं, तो मैं कुछ jquery/जावास्क्रिप्ट के साथ कुछ लिखना ठीक करूंगा। मैंने यही मेरा उपयोग किया है।
दोष यह है कि आप पृष्ठ पर डिफ़ॉल्ट टैब-कुंजी व्यवहार को रोकते हैं, जो कुछ स्थितियों में पहुंच के लिए बड़ी समस्या हो सकती है। लेकिन मुझे शक है।
var Tab = {};
Tab.i = 1,
Tab.items = 0;
function fixTabulation() {
/* This can be used to auto-assign tab-indexes, or
# commented out if it manual tab-indexes have
# already been assigned.
*/
$('input, select, textarea').each(function(){
$(this).attr('tabindex', Tab.i);
Tab.i++;
Tab.items++;
});
Tab.i = 0;
/* We need to listen for any forward or backward Tab
# key event tell the page where to focus next.
*/
$(document).on({
'keydown' : function(e) {
if (navigator.appVersion.match("Safari")) {
if (e.keyCode == 9 && !e.shiftKey) { //Tab key pressed
e.preventDefault();
Tab.i != Tab.items ? Tab.i++ : Tab.i = 1;
$('input[tabindex="' + Tab.i + '"], select[tabindex="' + Tab.i + '"], textarea[tabindex="' + Tab.i + '"]').not('input[type="hidden"]').focus();
}
if (e.shiftKey && e.keyCode == 9) { //Tab key pressed
e.preventDefault();
Tab.i != 1 ? Tab.i-- : Tab.i = Tab.items;
$('input[tabindex="' + Tab.i + '"], select[tabindex="' + Tab.i + '"], textarea[tabindex="' + Tab.i + '"]').not('input[type="hidden"]').focus();
}
}
}
});
/* We need to update Tab.i if someone clicks into
# a different part of the form. This allows us
# to keep tabbing from the newly clicked input
*/
$('input[tabindex], select[tabindex], textarea[tabindex]').not('input[type="hidden"]').focus(function(e) {
Tab.i = $(this).attr('tabindex');
console.log(Tab.i);
});
}
$(document).ready(function() {
fixTabulation();
});
यह कोई सही समाधान है, लेकिन यह प्रणाली Prefs में उनकी सफारी सेटिंग में बदलाव, lol जाने के लिए अपने सभी उपयोगकर्ताओं कह की तुलना में काफी बेहतर है।
स्रोत
2016-02-02 05:07:34
है आप दूसरा पाठ क्षेत्र को हटा दें और बटन tabindexes स्विच करते हैं (ताकि स्रोत में आदेश 1000, 1002, 1001), सफारी का पालन करता है tabindex आदेश? ऐसा लगता है कि सफारी किसी भी कारण से textareas/text inputs को उच्च प्राथमिकता देता है ... –
नहीं, यहां तक कि यह काम नहीं करता है। ऐसा लगता है जैसे सफारी में href पर tabindex को अनदेखा किया जाता है। मैं यह देखने के लिए बटन के साथ कामकाज की कोशिश कर रहा हूं कि यह काम करेगा या नहीं। – Dhana