2016-04-13 13 views
1

div(ループ上)で要素をフェードインまたはフェードアウトさせるためにJQueryスクリプトを変更しています。JQueryの構文エラーパズル

これは、スクリプトの一部です:

var fadeDuration = 2000; 
    var displayTime = 4000; 
    var currentIndex = 1; 
    var nextIndex = 1; 
    $(document).ready(function() { 
     $('ul.slideshow li').css({opacity: 0.0}); 
     $("'ul.slideshow li:nth-child(" + nextIndex + ")'").addClass('show').animate({opacity: 1.0}, fadeDuration); 
     var timer = setInterval("nextSlide()", displayTime); 
    }); 

私はjQueryの1.5を使用する場合、これは問題なく動作しますが、私は私にこのエラーを与えて、jQueryの1.12.0またはjQueryの2.2を使用する場合、それは失敗します。

"'' '' '、':x: 'は' querySelectorAll 'を実行できませんでした。

これは、関数の2行目で失敗:

$("'ul.slideshow li:nth-child(" + nextIndex + ")'").addClass('show').animate({opacity: 1.0}, fadeDuration); 

私はjQueryのに新たなんだ、と私は学習運動としてこれを使用していますが、私は困惑し、そしてどのようにわかりませんよ問題のデバッグを開始します(JQuery 1.5で動作する場合)。

アドバイスをいただければ幸いです!セレクタにアポストロフィを入れないでください

"ul.slideshow li:nth-child(1)" 

:あなたのような何かをしたいとき

"'ul.slideshow li:nth-child(1)'" 

答えて

5

この:

"'ul.slideshow li:nth-child(" + nextIndex + ")'" 

はあなたのような何かを与えるだろう。

+0

をお試しください!一定。 (それはJQuery 1.5のために働いていました。) – user5956088

1

この行の余分な引用符があります

$("'ul.slideshow li:nth-child(" + nextIndex + 
")'").addClass('show').animate({opacity: 1.0}, fadeDuration); 

はありがとう

$("ul.slideshow li:nth-child(" + nextIndex + 
")").addClass('show').animate({opacity: 1.0}, fadeDuration); 
+0

ありがとう!それを修正! – user5956088