/* =============================================================
 * スライドショー - JavaScript (on jQuery)
 * =============================================================
 * URL: http://mms.ne.jp/
 * Created: 2011-08-01
 * Last modified: 2011-08-01
 * Copyright (C) 2011 Mediaplan Co.,Ltd.
 * ------------------------------------------------------------- */

$.fn.switchImage = function(options) {
  var parent = this;
  var elements = parent.children();
  var images = parent.find("img");
  var count = 0;
  var index = 0;
  options = $.extend({ delay: 5000, duration: 1000, loop: true }, options);
  elements.slice(1).hide();

  var current = function(option, index) {
    return $.isArray(option) ? option[index] : option;
  };
  var method = function() { setTimeout(function() {
    var element = elements.eq(index);

    if (++index >= elements.length) {
      if (!options.loop) return; index = 0;
    }
    element.css("position", "absolute")
    .next().css("position", "relative").fadeIn(current(options.duration, index - 1), function() {
      parent.append(element.hide());
      (method)();
    });
  }, current(options.delay, index)); };

  images.one("load error", function() {
    if (++count >= images.length) (method)();
  }).each(function(index, element) {
    if ($.browser.msie && element.complete) $(element).load();
  });
  return this;
};
