1

まだ比較的初心者です。申し訳ありません。関数を別の関数のプロパティとして宣言しようとしています。私はこれを行うことができ、構文が正しいと確信しています。しかし、「関数ステートメントには名前が必要です」というエラーが表示され続けます。匿名関数を作成していると思われることを意味します。

これがコードです。hide パラメータと show パラメータでエラーがスローされます。私は何が欠けていますか?

function band(){

var width_offset = {
    high: "left:-376px", 
    low: "up:-200px" ,
}

hide : function(width_offset){ 
                if ($(document).width < 768){
                        $("#band").animate({width_offset.low}, {queue: false, duration: 200});  
                }else{
                        $("#band").animate({width_offset.high}, {queue: false, duration: 200});  
                };
            }

show : function(){ $("#band").animate({left:'0px'}, {queue: false, duration: 200}); }

}

ありがとう。

4

2 に答える 2

0

JavaScript では次のようなことはできません。

{"up:-200px"} != { up: '-200px' } # Not equivalent!

それに応じてコードを変更します。

function band() {

  var width_offset = {
    high: { left: "-376px" }, 
    low:  { up:   "-200px" }
  };

  return {
    hide: function(width_offset) {  
      if ($(document).width < 768) {
        $("#band").animate(width_offset.low, {queue: false, duration: 200});  
      } else {
        $("#band").animate(width_offset.high, {queue: false, duration: 200});  
      }
    },
    show : function() {
      $("#band").animate({left:'0px'}, {queue: false, duration: 200}); 
    }
  }
}
于 2013-07-24T16:12:00.680 に答える