2012-05-11 3 views
1

Я пытаюсь получить .focus() для работы с div-в-div, но независимо от того, что я делаю всякий раз, когда появляется div, курсор не находится в выбранном поле ввода.Фокус на входе не работает

Demo:. http://jsfiddle.net/Mobius1/36n8y/ (FIXED)

Нажмите на кнопку 'Цитата', чтобы сдвинуть DIV в I нужно курсор появится в первом поле ввода (#name).

Заранее спасибо.

ответ

1

Вы можете использовать функцию обратного вызова show:

$("#slide").hide().delay(500).show("drop", { 
    direction: "up" 
}, 500, function() { 
    $("#name").focus(); 
}); 

DEMO:http://jsfiddle.net/L366u/1/

+0

Большое спасибо! –

+0

Добро пожаловать :) – VisioN

0

Фокус в функции обратного вызова:

$("#slide") 
    .hide() 
    .delay(500) 
    .show("drop", { direction: "up" }, 500, function() { 
    $("#name").focus(); 
    }); 

Демо: http://jsfiddle.net/L366u/2/

0

изменить следующим образом ->

// focus on first input of slide (not working) 
     setTimeout(function(){$("#name").focus();}, 500); 
+1

Не лучшее решение. 'show' имеет обратный вызов для этого. – VisioN

Смежные вопросы