URL-адрес здесь: http://prorankstudios.com/sandbox/wtf/
Используя IE9, с фокусом на поле User или Pass, нажмите клавишу ВВОД ...
Обратите внимание, что вся эта страница перезагружается.
Что происходит, так это то, что обработчик клика для #live_site_link (назначенный в строке 30 файла common.js) работает, когда по #live_site_link вообще не было щелчков ...
Логин Подать код:
Login.Submit = function(e)
{
Login.feedback.empty();
if (Login.user.val() == '')
{
Camo.ErrorAlert('Invalid username.',Login.feedback);
Login.user.focus().select();
return false;
}
if (Login.pass.val() == '')
{
Camo.ErrorAlert('Invalid password.',Login.feedback);
Login.pass.focus().select();
return false;
}
Camo.AJAXStart('Logging in...');
postData =
{
user:Login.user.val(),
pass:Login.pass.val()
}
Camo.AJAXPost('index/login/',Login.Success,Login.Failure,postData);
return false;
}
Обработчик кликов live_site_link:
$('#live_site_link').click(function()
{
window.location.href = './';
});
Фактически, обработчики для формы входа в систему (как keyup, так и кнопка «Перейти», назначенная в строках login.js 22 и 24 соответственно) иногда запускаются ПОСЛЕ перезагрузки страницы, как ни странно.
В IE7 / режиме совместимости обработчики keyup и click для login_submit работают правильно, и страница не перезагружается. Это также относится ко всем другим браузерам, которые я тестировал.
Что делает IE9?