0

このスクリプトがFirefoxでのみ機能し、他のブラウザでは機能しない理由を誰かが指摘できますか?Chromeのコンソールには何も問題はありませんでした。Firefoxのofcについても同じです。助言がありますか?前もって感謝します!

jQuery.noConflict();
jQuery(document).ready(function(){

function wrapr(){
    var min=1;
    var max=5;
    var bd = jQuery('body.home');

    function bg(){

        if(min < max){

            bd.css('background-image','url(http://sitename/templates/rt_gantry/images/body/'+min+'.jpg');
            min++;
        }
        else if(min = max){
        min=1;
        }
    }
    setInterval(bg,9000);
}
wrapr();
});
4

2 に答える 2

1

この部分は良くありません:

else if(min = max){
   min=1;
}

単一の等号を使用すると、最大値が最小値に割り当てられます。等しいかどうかを確認するには、2つを使用する必要があります。

else if(min == max){
    min=1;
}
于 2012-05-15T18:39:28.947 に答える
1

')'が欠落しているようです:

bd.css('background-image','url(http://sitename/templates/rt_gantry/images/body/'+min+'.jpg)');

さらに:関数定義を引き出すことは読みやすさのために価値があるかもしれません:

  <script>
    jQuery.noConflict();

    function wrapr(){
        var min = 1;
        var max = 5;
        var bd = jQuery('body.home');

        setInterval(function(){
          if(min < max){
            bd.css('background-image','url(http://sitename/templates/rt_gantry/images/body/'+min+'.jpg');
            min++;
          } else {
            current = min;
          }
        }, 1000);
    }

    jQuery(document).ready(function(){
      wrapr();
    });
  </script>
于 2012-05-15T19:37:56.297 に答える