Вопрос

Привет, у меня был jquery толстая коробка модальный popup в моем заявлении.(iframe - iframe)
Все работает отлично, но я хочу установить сосредоточьтесь к a конкретное поле вводаd.

Iframe загружает обычную страницу aspx, поэтому я подумал, что сделаю $ (document).готово (.. фокус);
Я поместил этот скрипт в код IFrame

Однако это не работает.Я полагаю, что после "готовности" thickbox выполняет какой-то другой код, так что он снова теряет фокус.(например..Я МОГУ установить значение поля ввода, чтобы механизм действительно работал..

Кто - нибудь может помочь мне сфокусироваться ?Ниже приведен мой вызывающий код..

<a href="page.aspx?placeValuesBeforeTB_=savedValues&TB_iframe=true&height=550&width=700" title="Add" class="thickbox">Add</a>
Это было полезно?

Решение

ThickBox отображает контейнер iframe, вызывая метод в событии onload элемента iframe. Поскольку iframe скрыт на родительской странице до тех пор, пока содержимое iframe не загружено, вы не можете установить фокус, просто используя $ (document) .ready (.. focus) ;. Я нашел самый простой способ обойти это - использовать setTimeout для задержки вызова функции, которая устанавливает фокус, до тех пор, пока не отобразится iframe:

jQuery(document).ready(function() {        
    setTimeout(function(){
        $('#YourElementID').focus();   
    },200);
});

Примечание. Возможно, вам придется скорректировать передаваемое вами значение в миллисекундах в setTimeout.

Другие советы

Из docs.jquery.com:

Запускает событие фокусировки каждого сопоставленного элемента.

Это приводит к выполнению всех функций, которые были привязаны к событию focus.Обратите внимание, что при этом не выполняется метод фокусировки базовых элементов.

Это означает, что ваш код, скорее всего, должен быть:$('#input_field').get(0).focus ()

Разница в том, что в моем примере вы используете собственный элемент focus элемента DOM, тогда как в вашем вы используете jQuery.

Это все равно не работает, но, возможно, это шаг в правильном направлении.

Ваше здоровье,

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top