2009-03-11 2 views
3

Есть ли способ сосредоточиться на текстовом поле на загрузке страницы (на iphone)?Фокус OnLoad = "document.form_id.form_field_id.focus();" на iPhone

Я пробовал:

OnLoad="document.form_id.form_field_id.focus();" 

на iPhone Simulator, но он не работал.

Кто-нибудь теперь, почему это не работает, и если это так, то работа вокруг?

ответ

0

Попробуйте

OnLoad="document.getElementById('form_field_id').focus()" 
+0

Я уже пробовал это без какой-либо удачи .. Спасибо за усилия, хотя – user73481

0

Это лучше использовать стандартные способы доступа к формам и формы контроля:

document.forms.form_id.elements.form_field_id.focus(); 

(уведомление form и elements дополнение).

или:

document.forms['form_id'].elements['form_field_id'].focus(); 

, если контроль форма/форма IDS/имена имеют символы, которые не могут быть частью идентификаторов JavaScript, например «|», «-», «.» и т. д.

Короткие обозначения (как в вашем примере), хотя и широко поддерживаемые, на самом деле не стандартизированы, и обычно лучше придерживаться стандартных практик.

Я не уверен, в чем проблема. Возможно, мобильный Safari не поддерживает настройку программной фокусировки? Вы пытались вызвать фокус с небольшой задержкой?

window.setTimeout(function(){ 
    document.forms['form_id'].elements['form_field_id'].focus(); 
}, 100); 
Смежные вопросы