Javascript (jQuery) - Курс Codecademy

Это для двух отдельных упражнений codecademy. Они оба проходят мимо меня, но я не получаю ожидаемого результата.

3.2 – События мыши – Вопрос

Напишите обработчик наведения и прикрепите его ко всем блокам. В первой функции добавьте класс «hover» к текущему объекту, над которым мы наводим курсор, а во второй удалите класс «hover». Мы уже научились делать это, передавая объект события, но на этот раз давайте попробуем другой способ, используя $(this).addClass(). Тем не менее, вы можете попробовать события, если хотите!

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

3.2 – События мыши – Ответ

$(document).ready(function(){
    $('div').hover(function() {
        (this).addClass('hover');
    },
    function() {
        (this).removeClass('hover');
    });
});

3.3 События клавиатуры – вопрос

нажатие клавиши форматируется точно так же, как обработчик кликов.

Напишите обработчик нажатия клавиш, который добавляет div с классом «box» к div с id = «boxDiv». Прикрепите обработчик нажатия клавиш к телу документа.

3.3 События клавиатуры — ответ

$(document).ready(function(){
    $("body").keypress(function(event){
        $('#boxDiv').append($("<div/>").addClass('box'));
    });
 });

Если вам нужны дополнительные разъяснения, вот прямая ссылка на курс. http://www.codecademy.com/courses/jquery-events/2#!/exercises/1

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

С уважением,

Мэтт


person Matt    schedule 19.06.2012    source источник
comment
А какой именно у вас вопрос? Что касается того, что я не получаю ожидаемого результата, что получите вы и что вы должны получить?   -  person David says reinstate Monica    schedule 20.06.2012
comment
События мыши, говорится в нем. Когда вы закончите, зеленые прямоугольники должны выскочить и стать синими, когда пользователь наведет на них курсор. Ничего не происходит, когда я навожу курсор на него. События клавиатуры - судя по css добавляет поле, когда я нажимаю клавишу, но ничего не происходит. Это может быть просто ошибка создателей курса, но я просто хочу убедиться, что с моим кодом все в порядке.   -  person Matt    schedule 20.06.2012


Ответы (1)


Что касается событий мыши, есть небольшая синтаксическая ошибка:

(this).addClass('hover'); and (this).removeClass('hover');

отсутствуют начальные знаки доллара. Они должны быть:

$(this).addClass('hover'); and $(this).removeClass('hover');

Что касается теста клавиатуры, он должен работать. Когда вы запустите его, попробуйте щелкнуть в области результатов, прежде чем нажимать клавишу.

person ZephidsEmbrace    schedule 19.06.2012
comment
О, как глупо с моей стороны, спасибо! Это решенные события мыши. Что касается событий клавиатуры, я могу только предположить, что это ошибка курса на данный момент. - person Matt; 20.06.2012