2010-03-25 11 views
9
$('a#next').click(function() { 
    var tags = $('input[name=tags]'); 

    if(tags.val()==''){ 

    tags.addClass('hightlight'); 
    return false; 
    }else{ 
    tags.removeClass('hightlight'); 
    $('#formcont').fadeIn('slow'); 
    $('#next').hide('slow'); 
     return false; 
    } 
}); 

मैं उपरोक्त कोड को फ़ेडइन में आग लगाना चाहूंगा जैसे ही कोई टैग इनपुट में टाइप करना शुरू कर देता है। क्या कोई मुझे ऐसा करने का सही तरीका बता सकता है या मुझे सही दिशा में इंगित कर सकता है?jquery यह जांचने के लिए कि कोई व्यक्ति किसी फ़ील्ड में टाइप करना शुरू करता है

$('input#tags').keypress(function() { 

    $('#formcont').fadeIn('slow'); 
    $('#next').hide('slow'); 
}); 

समस्या सिर्फ मैंने पाया कि मेरे कर्सर नहीं रह गया टेक्स्ट बॉक्स में दिखाई देता है: अग्रिम

संपादित

यहाँ

धन्यवाद यह करने के लिए कोड है। मैं क्या गलत कर रहा हूं?

उत्तर

8

फीड की तरह लगता है कि आपका ध्यान केंद्रित हो रहा है, इसलिए कर्सर अब वहां नहीं है। इसे आजमाएं

$('input#tags').keypress(function() { 

    $('#formcont').fadeIn('slow'); 
    $('#next').hide('slow'); 
    $(this).focus(); 
}); 
0

आप focus event चाहते हैं।

$('a#next').focus(function() { 
     $('#formcont').fadeIn('slow'); 
    }); 
+0

यदि वह टाइपिंग शुरू करते समय कुछ करना चाहता है, तो वह वह नहीं करेगा जो उसे चाहिए। –

+0

लेकिन कीप्रेस प्रत्येक कुंजीपटल के साथ आग लग जाएगी न केवल पहले –

1

input#tags अनावश्यक और अपमानजनक है।

$('#tags').keypress(function() { 

    $('#formcont').fadeIn('slow'); 
    $('#next').hide('slow'); 
    $(this).focus(); 
}); 
+0

क्यों ???????????? –

+0

जब तक आप jquery विशिष्ट चयनकर्ताओं का उपयोग नहीं कर रहे हैं (उदाहरण:। (नहीं)) तो "इनपुट" कचरा है जो अतिसंवेदनशील है। सीएसएस चयनकर्ता की प्रोग्रामिंग लागत नगण्य है और केवल एक अलग जवाब देने के लिए कुछ बदलने के लिए देख रही है। –

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