2008-12-27 10 views
5

वेब ब्राउज़र वेब अनुप्रयोगों के लिए पतले ग्राहकों के रूप में अच्छे हैं।ब्राउजर में टैब कुंजी व्यवहार नियंत्रण संपादित करें

लेकिन यदि उपयोगकर्ता को एक वेब ब्राउज़र के अंदर एक संपादन बॉक्स में कुछ कोड (जहां टैब और स्वरूपण महत्वपूर्ण हैं) दर्ज करना है, तो वह प्रिंटिंग के बजाय "टैब" कुंजी को हर बार वेबपृष्ठ नियंत्रण के माध्यम से नेविगेट करता है "टैब" चरित्र।

क्या कोई निःशुल्क वेब नियंत्रण है या क्या विपरीत व्यवहार पाने के लिए कोई कोड है?
Google Docs यह पूरी तरह से करता है।

धन्यवाद।

उत्तर

3

याहू यूआई लाइब्रेरी में rich text editor है जो टैब अक्षरों को सही तरीके से संभालता है।

EDIT: मुझे संदेह है (क्योंकि मैंने देखा नहीं है) कि यूयूआई संपादक और Google के संपादक दोनों टेक्स्ट कंटेनर पर एक केपप्रेस हैंडलर जोड़कर इसे पूरा करते हैं। जब वे एक टैब चरित्र का पता लगाते हैं तो वे कंटेनर में एक टैब जोड़ते हैं और सामान्य टैब कार्रवाई को रद्द करने के लिए झूठी वापसी करते हैं।

2

आप keydown घटना को फ़िल्टर और टैब कुंजी पकड़ कर सकते हैं:

<html> 
<body> 
<script type="text/javascript"> 
function keyFilter(e, field) { 
    var key = window.event ? e.keyCode : e.which; 
    if (key == 9) { 
    field.value += "\t"; 
    return false; 
    } 
    return true; 
} 
</script> 

<form> 
<textarea onkeydown="return keyFilter(event, this);"></textarea> 
</form> 
</html> 

संपादित करें: ध्यान दें कि इस तुलना में अधिक जटिल निश्चित रूप से है। किसी को ट्रैक रखने की आवश्यकता है कि टेक्स्ट कुंजी में टैब कुंजी दबाई जाती है और उसके अनुसार चरित्र डालें।

+0

फ़ायरफ़ॉक्स में मेरे मैकिंटोश पर, आपको एक टैब वर्ण के लिए e.keyCode को ई-जो सेट नहीं किया गया है, की जांच करने की आवश्यकता है। – tvanfosson

+0

कोई भी जानता है कि इसे कैसे करें (कुंजीकोड प्राप्त करें) ठीक से? – PEZ

+0

उम्म्म ... फ़ायरफ़ॉक्स में मेरे मैक पर उपर्युक्त कोड काम करता है। और यह सफारी में भी काम करता है। – PEZ

संबंधित मुद्दे