2010-12-12 7 views
0

J'essaie d'utiliser ce qui suit, mais cela ne fonctionne pas. Je fais quelque chose de mal c'est certain.jQuery: IE problème spécifique

$.keyNav(); 
    $.whenPressed('t',function(){ 
    $("#grid-wrapper article.post").fadeTo(200, 1); 
     }); 
    $.whenPressed('p',function(){ 
    $("#grid-wrapper article.post").not(".category-photographie").fadeTo(200, 0.1); 
    $("#grid-wrapper article.post").filter(".category-photographie").fadeTo(200, 1); 
     }); 
     $.whenPressed('d',function(){ 
    $("#grid-wrapper article.post").not(".category-design").fadeTo(200, 0.1); 
    $("#grid-wrapper article.post").filter(".category-design").fadeTo(200, 1); 
     }); 
     $.whenPressed('v',function(){ 
    $("#grid-wrapper article.post").not(".category-video").fadeTo(200, 0.1); 
    $("#grid-wrapper article.post").filter(".category-video").fadeTo(200, 1); 
     }); 
     $.whenPressed('w',function(){ 
    $("#grid-wrapper article.post").not(".tweet").fadeTo(200, 0.1); 
    $("#grid-wrapper article.post").filter(".tweet").fadeTo(200, 1); 
     }); 
}); 

Si j'ai enlevé le dernier }); cela fonctionne, mais pas dans IE alors peut-être ma syntaxe est erronée?

J'utilise le plugin keynav:

https://github.com/BrianTheCoder/jquery-keyboard-navigation/blob/master/README

+0

Vous êtes sûr qu'il n'y a pas d'erreur ailleurs? La barre d'état IE montrant quelque chose? –

Répondre

2

Je ne suis pas vraiment sûr de ce que votre problème IE, il ne semble pas que votre code affiché causerait des problèmes les plus probables ... il y a une erreur avant ce code, comme une virgule que quelque chose IE ne tolérera pas). Vérifiez la console du développeur pour les erreurs dans IE (IE8 +) et la barre d'état dans les versions antérieures pour voir ce qui se passe. J'ai cependant une suggestion, utilisez une carte d'objet pour réduire votre code ici, puisque vous vous répétez beaucoup ... en faisant ainsi vous pouvez plus d'erreurs de syntaxe possibles, comme ceci:

var map = { t:"*", 
      p:".category-photographie", 
      d:".category-design", 
      v:".category-video", 
      w:".tweet" }; 
$.keyNav(); 
$.each(map, function(key, selector) { 
    $.whenPressed(key,function(){ 
    $("#grid-wrapper article.post").not(selector).fadeTo(200, 0.1) 
          .end().filter(selector).fadeTo(200, 1); 
    }); 
}); 
+0

Merci pour le code. Je ne suis pas programmeur donc j'ai fait de mon mieux ;-) Dans IE8 je suis dans la console et cliquez sur Démarrer Déboguer la page sur les recharges de gauche mais rien n'apparaît sur la droite. – Gab