Я недавно решил попробовать jQuery 1.4, взволнованный тем, что наконец-то получу поддержку живых обработчиков событий, которые работают для событий изменений в IE. Однако кажется, что они не всегда работают. Если я пытаюсь назначить обработчик изменений для выбранного элемента, он не работает, когда я изменяю его в IE.
Я пробовал это в IE 6, 7 и 8. В любом другом браузере, который я пробовал (Firefox, Chrome, Safari), он работает нормально. Я попытался поместить команду для назначения обработчика в функцию ready, но это не помогло.
Кто-нибудь знает, что является причиной этого или что я могу сделать, чтобы это исправить? Я делаю что-то не так, или это ошибка в jQuery? Вот пример:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html><head>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'>
<title>jQuery live change handler test</title>
</head>
<body>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<select id="test">
<option value="a">a
<option value="b">b
</select>
<script type="text/javascript">
$("#test").live("change", function() {
alert('hi');
});
</script>
</body></html>