J'ai un problème dans IE6/7 où ils ignorent la liaison en direct des éléments. Je n'arrive pas à trouver de solutions à ce problème, et j'ai vraiment besoin d'IE6 et de 7 support (la réparation devrait régler l'autre). Le premier clic de mes éléments fonctionne comme prévu, mais après la liaison disparaît et je ne peux pas le faire fonctionner. Cela ne se produit pas dans IE8 ou tout autre navigateur actuel.Problème de liaison de clic direct jQuery avec IE6/7
Voici mon code. Comme vous pouvez le voir, à la ligne 5, j'affiche la variable hrefID. Après le premier clic, hrefID montre clairement que la liaison disparaît car elle imprime un href totalement différent.
Quelqu'un peut-il aider?
// AJAX Page Changing
$("#mContainer a:lt(6),#home a").live("click", function(){
var clickID = 0;
var hrefID = $(this).attr("href");
alert(hrefID);
switch(hrefID){
case 'home':
clickID = 0;
break;
case 'portfolio':
clickID = 1;
break;
case 'resume':
clickID = 2;
break;
case 'about':
clickID = 3;
break;
case 'contact':
clickID = 4;
break;
case 'tutorials':
clickID = 5;
break;
}
$.ajax({
type: 'POST',
url: "/includes/pages/"+hrefID+".php",
data: "ajaxtab=1",
cache: false,
success: function(code){
// Change Tab Image
var expireDate = new Date(new Date().getTime()+86400000*5); //5 Days
document.cookie = "soluml="+hrefID+";expires="+expireDate.toGMTString();
$("#body").fadeTo("fast", 0, function(){$("#body").html(code);});
$("#body").fadeTo("fast", 1);
$.post("/includes/topnav.php",{ajaxtab:clickID},function(data){$("#mContainer").html(data)});
},
error: function(){
return true;
}
});
return false;
});
//
Avez-vous utiliser en direct()? Cela fonctionne-t-il si vous remplacez live() par bind()? –