2011-04-15 14 views
5

iPad Safari'deki klavyenin ekranını (göster/gizle) kodla kontrol etmek mümkün mü?iPad kullanarak Safari'yi klavye kullanarak gösterebilir/gizleyebilir misiniz?

2 form alanım var;

kullanıcı hamle Devlete Name odak zaman Sorum şu, klavye hala there..Why olduğunu 1. Metin kutusu (diyelim adı) 2. liste/Açılır (Say Devleti) o kadar ve nasıl yapsak Odak açılana hareket ettiğinde klavyeyi gizler miyim?

Teşekkür ederiz.

+0

Sorunuzu yalnızca gizlemekle ilgilendiğinizde klavyeyi gösterme hakkında sormamalısınız. – Michael

cevap

2

Sadece benzer bir soruna rastladım, çözümümün sizin için çalışıp çalışmadığından emin değilim.

Benim durumumda, bir form içinde bir metin girdim var. Gönderme sırasında, sayfanın gezinmesini durdurmak için e.preventDefault() kullanıyorum. Bunun klavyeyi saklamanın varsayılan eylemini durdurma etkisine de sahip olduğuna inanıyorum.

Bunu çözmek için, form gönderildiğinde açık bir input.blur() ekledim. Bu klavye kaldırmak için safari için yeterli görünüyordu.

Bu yardımcı olur umarız!

+0

Thx..i kesinlikle bu yöntemi deneyeceğim .. – testndtv

+0

Ben karşı problem yaşıyorum, yani. Hala bir metin öğesi olduğunda klavye söner. Zaten preventDefault kullanıyorum ve klavye hala gidiyor. Document.activeElement.blur() için – Michael

1

Aynı sorunu yaşadım. Alandan çıkarken (ipad'da yerel davranış değil) ve odak alanı seçildiğinde klavyenin daraltılması gerektiğine dair bir formum vardı. Benim için tek çözüm gizli girişi

<input type="hidden" id="blurInput" /> 

oluşturulması ve odak olay için javascript kodu işleyici idi:

sadece başka çözüm mükemmel çalışır, ancak girdi alanı bulanıklık istediğiniz durumda
$element = $(event.target); 
if($element.is('select')) { 
    $('#blurInput').blur(); 
    $element.focus(); 
} 

girişi ile bunu seç başarısız

document.activeElement.blur(); 
$('input').blur(); 
+0

+1; –

İlgili konular