2010-12-12 3 views
0

私は以下を使用しようとしていますが、動作しません。私は確かに間違った何かをしています。jQuery:IE特有の問題

$.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); 
     }); 
}); 

私はそれが動作しますが、IEにので、多分、私の構文が間違っていない最後の});を取り外した場合は?私はあなたのIEの問題は、それはすべての問題...があります最も可能性の原因となる、あなたの投稿コードのようには思えない本当にわからないんだけど

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

+0

他の場所でエラーが発生していないことは確かですか? IEのステータスバーには何も表示されますか? –

答えて

2

私はkeynavプラグインを使用しますエラーの前にこのコードは、何かIEが許容しない後続のカンマのように)。 IE(IE8 +の場合)と以前のバージョンのステータスバーでエラーが発生したことをデベロッパーコンソールで確認します。

私は提案をしていますが、オブジェクトマップを使用してコードをここで減らすことができます。自分自身をたくさん繰り返しているので、より多くの構文エラーが発生する可能性があります。

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

コードをありがとうございます。私はプログラマーではないので、私はベストを尽くしました;-) IE8では、コンソールに入っていて、左のリロードでページのデバッグを開始しますが、右には何も表示されません。 – Gab