2011-06-10 11 views
14

में काम कर रही है कोई विचार यह क्यों हो सकता है? मुझे आमतौर पर लगता है कि क्रोम कोड के साथ अधिक क्षमाशील होगा?कीप्रेस घटना आईई और क्रोम में काम नहीं कर रही है लेकिन एफएफ

$(document).keypress(function(e) { 
    if(e.keyCode == 39) rightImage(); 
    if(e.keyCode == 37) leftImage(); 
}); 

मेरी कुंजीपटल कुंजी कैसा दिखता है। क्या मैं कुछ भूल रहा हूँ? rightImage(); और बाएं छवि(); ऐसे कार्य हैं जो काम कर रहे हैं क्योंकि मैं कहीं और उन कार्यों का उपयोग कर रहा हूं

सहायता के लिए धन्यवाद!

+0

मेरे लिए, आपका कीकोड 39 है -> '(उद्धरण) –

+0

यह जांचें: http://jsfiddle.net/LmXaW/10/ –

+0

@ रिकार्डोअराउडा यह कीपैड घटना का उपयोग नहीं कर रहा है। – Foreever

उत्तर

30

बदलें keypresskeydown रहे हैं:

$(document).keydown(function(e) { 
    if(e.keyCode == 39) rightImage(); 
    if(e.keyCode == 37) leftImage(); 
}); 

keydown घटना तब होती है जब कुंजी दबाया जाता है, कुंजी दबाने घटना से तुरंत पालन किया। फिर कुंजी जारी होने पर कीप इवेंट उत्पन्न होता है।

आदेश keydown और कुंजी दबाने के बीच अंतर समझने के लिए, यह एक "चरित्र" और एक "कुंजी" के बीच अंतर को समझने के लिए उपयोगी है। एक "कुंजी" कंप्यूटर के कीबोर्ड पर एक भौतिक बटन है जबकि "वर्ण" एक बटन दबाकर टाइप किया गया प्रतीक है। सिद्धांत रूप में, कीडाउन और कीप घटनाएं कुंजी को दबाए या जारी की जाती हैं, जबकि कीप्रेस ईवेंट टाइप किए गए वर्ण का प्रतिनिधित्व करती है। सिद्धांत के कार्यान्वयन सभी ब्राउज़रों में समान नहीं है।

+0

धन्यवाद दोस्तों! हाँ कीडाउन काम करता है! स्पष्टीकरण के लिए भी धन्यवाद! – hellomello

+0

धन्यवाद ...... :) –

+0

लिंक किसी बिंदु पर विज्ञापनों के लिए एक पुनर्निर्देशन बन गया। – Ariane

2

मिले जवाब यहाँ: http://api.jquery.com/keypress/

"यदि आप तीर का उपयोग को नष्ट करना चाहते हैं, तो Chrome में बैकस्पेस कुंजी आप keydown का उपयोग करना चाहिए इन कुंजियों पर कुंजी दबाने केवल फ़ायरफ़ॉक्स और ओपेरा में काम करते हैं।।"

आपका कोड iE8 (एफएफ में काम किया) में मेरे लिए काम नहीं करता है, इसलिए मैंने कीपैड पर कीप्रेस को स्विच किया। आईई में अब काम करता है। यहां परीक्षण करने के लिए क्रोम नहीं है।

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