var defaultSpeed = -0.4;
var fastSpeed = -4;
var slideX = Array();
var slideSpeed = Array();
var slideID = Array();
var leftLimit;          // スクロールレイヤーの左到達点

// スクロールさせる画像は、親レイヤーの幅を満たす分だけ重複して配置すること

/** 
 * 初期処理
 *
 * @param layerId          スクロールレイヤーのID
 * @param parentLayerId    親レイヤーのID
 * @param imgWidth         画像の幅
 * @param imgCnt           画像の数
 */
function scroll_init(layerId, parentLayerId, imgWidth, imgCnt){
  var parentLayerWidth = ($(parentLayerId).css("width")).replace("px","");
  if ( parentLayerWidth > imgWidth * imgCnt ){
    imgCnt = Math.ceil(parentLayerWidth / imgWidth);
  }
  leftLimit = imgWidth * imgCnt * -1;
  var layerwidth = imgWidth * ( imgCnt + (Math.ceil(parentLayerWidth / imgWidth)));
  $(layerId).css("width", layerwidth);
  slideX[layerId] = 0;
  slideSpeed[layerId] = defaultSpeed;
  scroll_layer(layerId);
}

// ループ処理
function scroll_layer(layerId) {

	if(slideX[layerId] < leftLimit) slideX[layerId] = 0;
  if(slideX[layerId] > 0) slideX[layerId] = leftLimit;
  slideX[layerId]+=slideSpeed[layerId];

  $(layerId).css("left", slideX[layerId]);
  
  slideID[layerId] = setTimeout('scroll_layer("'+layerId+'")', 10);
}

// スピードアップ
function scroll_speedup(layerId,direction) {
  slideSpeed[layerId] = fastSpeed;
  if(direction == 'left'){
    slideSpeed[layerId] = Math.abs(slideSpeed[layerId]) * -1;
  } else {
    slideSpeed[layerId] = Math.abs(slideSpeed[layerId]);
  }
}

// スピードダウン
function scroll_speeddown(layerId,direction) {
  slideSpeed[layerId] = defaultSpeed;
  if(direction == 'left'){
    slideSpeed[layerId] = Math.abs(slideSpeed[layerId]) * -1;
  } else {
    slideSpeed[layerId] = Math.abs(slideSpeed[layerId]);
  }
}

