SORU
16 Mayıs 2011, PAZARTESİ


Nasıl algılamak "enter" vardiyayı ben; Button yeni bir satır oluşturur?

Kişi basarsa şu andagirinmetin alanı içinde formu gönderin.
İyi, ben de bunu istiyorum.

Ama ne zaman onlar yazınshiftgirinBu button bir sonraki satıra geçmek istiyorum: \n

*Nasıl 4* veya düz JavaScript mümkün olduğunca Basit olarak bunu yapabilir miyim?

CEVAP
16 Mayıs 2011, PAZARTESİ


Birincisi, tuşuna basmakGirinbir button içinde bunu yapmak için komut dosyası olmadan formu göndermek değil. Bu kullanıcının beklediği davranışları ve değişen karşıyım. Eğer bunu yapmak zorundaysanız, ancak en kolay yöntem yapan script bulmak olacaktırGirinformu gönderin ve değiştirin. Kod gibi bir şey olacak

if (evt.keyCode == 13) {
    form.submit();
}

... ve sadece bunu değiştirebilirsin

if (evt.keyCode == 13 && !evt.shiftKey) {
    form.submit();
}

Yoksa erişmek için bu kodu bir sebepten yapmanız gereken aşağıdaki çözüm sağlamak için tüm büyük tarayıcılar bile şapka değil sonunda metin:

jsFiddle: http://jsfiddle.net/zd3gA/1/

Kod:

function pasteIntoInput(el, text) {
    el.focus();
    if (typeof el.selectionStart == "number"
            && typeof el.selectionEnd == "number") {
        var val = el.value;
        var selStart = el.selectionStart;
        el.value = val.slice(0, selStart)   text   val.slice(el.selectionEnd);
        el.selectionEnd = el.selectionStart = selStart   text.length;
    } else if (typeof document.selection != "undefined") {
        var textRange = document.selection.createRange();
        textRange.text = text;
        textRange.collapse(false);
        textRange.select();
    }
}

function handleEnter(evt) {
    if (evt.keyCode == 13 && evt.shiftKey) {
        if (evt.type == "keypress") {
            pasteIntoInput(this, "\n");
        }
        evt.preventDefault();
    }
}

// Handle both keydown and keypress for Opera, which only allows default
// key action to be suppressed in keypress
$("#your_textarea_id").keydown(handleEnter).keypress(handleEnter);

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • discokatze

    discokatze

    23 EYLÜL 2009
  • Migs351

    Migs351

    3 HAZİRAN 2007
  • TROPFEST

    TROPFEST

    27 Mart 2007