0 votes

les gestionnaires de changement en direct de jQuery 1.4.1 ne fonctionnent pas toujours pour les éléments sélectionnés dans IE

Cette question est liée à mon le dernier à propos de jQuery 1.4. Ils ont soi-disant corrigé le bogue qui empêchait les gestionnaires de changement de fonctionner dans IE, mais il n'est pas entièrement corrigé.

J'essaie de lier un gestionnaire de changement en direct à un élément de sélection. La plupart du temps, lorsque je le modifie, le gestionnaire d'événements se déclenche. Mais si je me place sur l'élément immédiatement après le chargement de la page, que j'essaie de modifier la valeur à l'aide du clavier, puis que je me retire de l'élément, l'événement ne se déclenche pas dans IE. Cela ne se produit que la première fois que j'essaie de modifier la valeur. J'ai remarqué ce phénomène dans IE 6, 7 et 8. Cela ne se produit dans aucun des autres navigateurs que j'ai essayés. Je suis sûr qu'il s'agit d'un bogue dans jQuery. Quelqu'un connaît-il un moyen simple de contourner ce problème ?

Voici une page d'exemple pour démontrer le bug :

<!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 2</title>
</head>
<body>
<script type="text/javascript" src="jquery-1.4.1.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>

2voto

mr.moses Points 1784

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X