Ты первая проблема заключается в том, что в #step1
вы получили закрывающие тег случайной кнопки. Input
s самозакрывающиеся.
Вот очищенное вверх версия для шага 1 и 2:
// Step 1
<input id="playlistNameInput" size="10">
that has at least <input id="totalHours" size="2"> hours and
<input id="totalMins" size="2"> minutes of music.</p>
// Step 2
<input id="songTitle" placeholder="Title">
<input id="songArtist" placeholder="Artist">
<input id="songMinutes" placeholder="Minutes">
<input id="songSeconds" placeholder="Seconds">
Во-вторых, при нажатии кнопки «Готов к Rock», это приведет вас к #step2
, который не имеет #playlistNameInput
.
Наконец, переместите $('#playlistNameInput').focus()
в fadeOut
так, что он будет запущен после того, как следующий шаг был утрачен в.
$("#prompt").fadeOut('10000', function()
{
$("#step1").css("visibility", "visible").hide().fadeIn('slow');
$('#playlistNameInput').focus();
});
Done. Вот cleaned-up, working fiddle.
Если элемент не отображается (или рассматривается как часть макета), он не может быть сфокусирован. Подождите, пока ваше исчезновение в анимации не закончится, а затем вызовите 'focus'. Если это не сработает, я не знаю, почему. Сочетание Backbone и jQuery - это довольно трудно понять. Постскриптум '' 'не закрывается' ' – Ryan
Примечание: вы должны проверить свой HTML-код, который покажет много потенциальных проблем. Например, HTML-документ должен иметь раздел 'head', а не раздел' header'. http://validator.w3.org/ – Guffa
' минут' LOL Я думаю, что вы забыли удалить '', когда вы скопировали код. –