text: /****************************************
  
   @Name：layer v1.8.5 弹层组件压缩版
   @Author：贤心
   @Date：2014-08-13
   @Blog：http://sentsin.com
   @Copyright：Sentsin Xu(贤心)
   @官网：http://sentsin.com/jquery/layer
          
   */
  
  ; !
  function(a, b) {
      "use strict";
      var c, d, e = "",
      //组件存放目录，为空表示自动获取
      f = {
          getPath: function() {
              var a = document.scripts,
              b = a[a.length - 1].src;
              return e ? e: b.substring(0, b.lastIndexOf("/") + 1)
          },
          type: ["dialog", "page", "iframe", "loading", "tips"]
      };
      a.layer = {
          v: "1.8.5",
          ie6: !!a.ActiveXObject && !a.XMLHttpRequest,
          index: 0,
          path: f.getPath(),
          use: function(a, b) {
              var d = c("head")[0],
              a = a.replace(/\s/g, ""),
              e = /\.css$/.test(a),
              f = document.createElement(e ? "link": "script"),
              g = a.replace(/\.|\//g, "");
              e && (f.type = "text/css", f.rel = "stylesheet"),
              f[e ? "href": "src"] = /^http:\/\//.test(a) ? a: layer.path + a,
              f.id = g,
              c("#" + g)[0] || d.appendChild(f),
              b && (document.all ? c(f).ready(b) : c(f).load(b))
          },
          alert: function(a, b, d, e) {
              var f = "function" == typeof d,
              g = {
                  dialog: {
                      msg: a,
                      type: b,
                      yes: f ? d: e
                  },
                  area: ["auto", "auto"]
              };
              return f || (g.title = d),
              c.layer(g)
          },
          confirm: function(a, b, d, e) {
              var f = "function" == typeof d,
              g = {
                  dialog: {
                      msg: a,
                      type: 4,
                      btns: 2,
                      yes: b,
                      no: f ? d: e
                  }
              };
              return f || (g.title = d),
              c.layer(g)
          },
          msg: function(a, d, e, f) {
              var g = {
                  title: !1,
                  closeBtn: !1,
                  time: d === b ? 2 : d,
                  dialog: {
                      msg: "" === a || a === b ? "&nbsp;": a
                  },
                  end: f
              };
              return "object" == typeof e ? (g.dialog.type = e.type, g.shade = e.shade, g.shift = e.rate) : "function" == typeof e ? g.end = e: g.dialog.type = e,
              c.layer(g)
          },
          load: function(a, b) {
              return "string" == typeof a ? layer.msg(a, b || 0, 16) : c.layer({
                  time: a,
                  loading: {
                      type: b
                  },
                  bgcolor: b ? "#fff": "",
                  shade: b ? [.1, "#000"] : [0],
                  border: 3 !== b && b ? [6, .3, "#000"] : [0],
                  type: 3,
                  title: ["", !1],
                  closeBtn: [0, !1]
              })
          },
          tips: function(a, b, d, e, f, g) {
              var h = {
                  type: 4,
                  shade: !1,
                  success: function(a) {
                      this.closeBtn || a.find(".xubox_tips").css({
                          "padding-right": 10
                      })
                  },
                  bgcolor: "",
                  tips: {
                      msg: a,
                      follow: b
                  }
              };
              return h.time = "object" == typeof d ? d.time: 0 | d,
              d = d || {},
              h.closeBtn = d.closeBtn || !1,
              h.maxWidth = d.maxWidth || e,
              h.tips.guide = d.guide || f,
              h.tips.style = d.style || g,
              h.tips.more = d.more,
              c.layer(h)
          }
      };
      var g = ["xubox_layer", "xubox_iframe", ".xubox_title", ".xubox_text", ".xubox_page", ".xubox_main"],
      h = function(a) {
          var b = this,
          d = b.config;
          layer.index++,
          b.index = layer.index,
          b.config = c.extend({},
          d, a),
          b.config.dialog = c.extend({},
          d.dialog, a.dialog),
          b.config.page = c.extend({},
          d.page, a.page),
          b.config.iframe = c.extend({},
          d.iframe, a.iframe),
          b.config.loading = c.extend({},
          d.loading, a.loading),
          b.config.tips = c.extend({},
          d.tips, a.tips),
          b.creat()
      };
      h.pt = h.prototype,
      h.pt.config = {
          type: 0,
          shade: [.3, "#000"],
          fix: !0,
          move: ".xubox_title",
          title: "&#x4FE1;&#x606F;",
          offset: ["", "50%"],
          area: ["310px", "auto"],
          closeBtn: [0, !0],
          time: 0,
          bgcolor: "#fff",
          border: [6, .3, "#000"],
          zIndex: 19891014,
          maxWidth: 400,
          dialog: {
              btns: 1,
              btn: ["&#x786E;&#x5B9A;", "&#x53D6;&#x6D88;"],
              type: 8,
              msg: "",
              yes: function(a) {
                  layer.close(a)
              },
              no: function(a) {
                  layer.close(a)
              }
          },
          page: {
              dom: "#xulayer",
              html: "",
              url: ""
          },
          iframe: {
              src: "http://sentsin.com",
              scrolling: "auto"
          },
          loading: {
              type: 0
          },
          tips: {
              msg: "",
              follow: "",
              guide: 0,
              isGuide: !0,
              style: ["background-color:#FF9900; color:#fff;", "#FF9900"]
          },
          success: function() {},
          close: function(a) {
              layer.close(a)
          },
          end: function() {}
      },
      h.pt.space = function(a) {
          var b = this,
          a = a || "",
          c = b.index,
          d = b.config,
          e = d.dialog,
          f = -1 === e.type ? "": '<span class="xubox_msg xulayer_png32 xubox_msgico xubox_msgtype' + e.type + '"></span>',
          h = ['<div class="xubox_dialog">' + f + '<span class="xubox_msg xubox_text" style="' + (f ? "": "padding-left:20px") + '">' + e.msg + "</span></div>", '<div class="xubox_page">' + a + "</div>", '<iframe scrolling="' + d.iframe.scrolling + '" allowtransparency="true" id="' + g[1] + c + '" name="' + g[1] + c + '" onload="this.className=\'' + g[1] + '\'" class="' + g[1] + '" frameborder="0" src="' + d.iframe.src + '"></iframe>', '<span class="xubox_loading xubox_loading_' + d.loading.type + '"></span>', '<div class="xubox_tips" style="' + d.tips.style[0] + '"><div class="xubox_tipsMsg">' + d.tips.msg + '</div><i class="layerTipsG"></i></div>'],
          i = "",
          j = "",
          k = d.zIndex + c,
          l = "z-index:" + k + "; background-color:" + d.shade[1] + "; opacity:" + d.shade[0] + "; filter:alpha(opacity=" + 100 * d.shade[0] + ");";
          d.shade[0] && (i = '<div times="' + c + '" id="xubox_shade' + c + '" class="xubox_shade" style="' + l + '"></div>'),
          d.zIndex = k;
          var m = "",
          n = "",
          o = "z-index:" + (k - 1) + ";  background-color: " + d.border[2] + "; opacity:" + d.border[1] + "; filter:alpha(opacity=" + 100 * d.border[1] + "); top:-" + d.border[0] + "px; left:-" + d.border[0] + "px;";
          d.border[0] && (j = '<div id="xubox_border' + c + '" class="xubox_border" style="' + o + '"></div>'),
          !d.maxmin || 1 !== d.type && 2 !== d.type || /^\d+%$/.test(d.area[0]) && /^\d+%$/.test(d.area[1]) || (n = '<a class="xubox_min" href="javascript:;"><cite></cite></a><a class="xubox_max xulayer_png32" href="javascript:;"></a>'),
          d.closeBtn[1] && (n += '<a class="xubox_close xulayer_png32 xubox_close' + d.closeBtn[0] + '" href="javascript:;" style="' + (4 === d.type ? "position:absolute; right:-3px; _right:7px; top:-4px;": "") + '"></a>');
          var p = "object" == typeof d.title;
          return d.title && (m = '<div class="xubox_title" style="' + (p ? d.title[1] : "") + '"><em>' + (p ? d.title[0] : d.title) + "</em></div>"),
          [i, '<div times="' + c + '" showtime="' + d.time + '" style="z-index:' + k + '" id="' + g[0] + c + '" class="' + g[0] + '"><div style="background-color:' + d.bgcolor + "; z-index:" + k + '" class="xubox_main">' + h[d.type] + m + '<span class="xubox_setwin">' + n + '</span><span class="xubox_botton clearfix"></span></div>' + j + "</div>"]
      },
      h.pt.creat = function() {
          var a = this,
          b = "",
          d = a.config,
          e = d.dialog,
          f = a.index,
          h = d.page,
          i = c("body"),
          j = function(d) {
              var d = d || "";
              b = a.space(d),
              i.append(c(b[0]))
          };
          switch (d.type) {
          case 0:
              d.title || (d.area = ["auto", "auto"]),
              c(".xubox_dialog")[0] && layer.close(c(".xubox_dialog").parents("." + g[0]).attr("times"));
              break;
          case 1:
              if ("" !== h.html) j('<div class="xuboxPageHtml">' + h.html + "</div>"),
              i.append(c(b[1]));
              else if ("" !== h.url) j('<div class="xuboxPageHtml" id="xuboxPageHtml' + f + '">' + h.html + "</div>"),
              i.append(c(b[1])),
              c.get(h.url,
              function(a) {
                  c("#xuboxPageHtml" + f).html(a.toString()),
                  h.ok && h.ok(a)
              });
              else {
                  if (0 != c(h.dom).parents(g[4]).length) return;
                  j(),
                  c(h.dom).show().wrap(c(b[1]))
              }
              break;
          case 3:
              d.title = !1,
              d.area = ["auto", "auto"],
              d.closeBtn = ["", !1],
              c(".xubox_loading")[0] && layer.closeLoad();
              break;
          case 4:
              d.title = !1,
              d.area = ["auto", "auto"],
              d.fix = !1,
              d.border = [0],
              d.tips.more || layer.closeTips()
          }
          1 !== d.type && (j(), i.append(c(b[1])));
          var k = a.layerE = c("#" + g[0] + f);
          if (k.css({
              width: d.area[0],
              height: d.area[1]
          }), d.fix || k.css({
              position: "absolute"
          }), d.title && (3 !== d.type || 4 !== d.type)) {
              var l = 0 === d.type ? e: d,
              m = k.find(".xubox_botton");
              switch (l.btn = d.btn || e.btn, l.btns) {
              case 0:
                  m.html("").hide();
                  break;
              case 1:
                  m.html('<a href="javascript:;" class="xubox_yes xubox_botton1">' + l.btn[0] + "</a>");
                  break;
              case 2:
                  m.html('<a href="javascript:;" class="xubox_yes xubox_botton2">' + l.btn[0] + '</a><a href="javascript:;" class="xubox_no xubox_botton3">' + l.btn[1] + "</a>")
              }
          }
          "auto" === k.css("left") ? (k.hide(), setTimeout(function() {
              k.show(),
              a.set(f)
          },
          500)) : a.set(f),
          d.time <= 0 || a.autoclose(),
          a.callback()
      },
      f.fade = function(a, b, c) {
          a.css({
              opacity: 0
          }).animate({
              opacity: c
          },
          b)
      },
      h.pt.offset = function() {
          var a = this,
          b = a.config,
          c = a.layerE,
          e = c.outerHeight();
          a.offsetTop = "" === b.offset[0] && e < d.height() ? (d.height() - e - 2 * b.border[0]) / 2 : -1 != b.offset[0].indexOf("px") ? parseFloat(b.offset[0]) : parseFloat(b.offset[0] || 0) / 100 * d.height(),
          a.offsetTop = a.offsetTop + b.border[0] + (b.fix ? 0 : d.scrollTop()),
          -1 != b.offset[1].indexOf("px") ? a.offsetLeft = parseFloat(b.offset[1]) + b.border[0] : (b.offset[1] = "" === b.offset[1] ? "50%": b.offset[1], a.offsetLeft = "50%" === b.offset[1] ? b.offset[1] : parseFloat(b.offset[1]) / 100 * d.width() + b.border[0])
      },
      h.pt.set = function(a) {
          var b = this,
          e = b.config,
          h = (e.dialog, e.page),
          i = (e.loading, b.layerE),
          j = i.find(g[2]);
          switch (b.autoArea(a), e.title ? 0 === e.type && layer.ie6 && j.css({
              width: i.outerWidth()
          }) : 4 !== e.type && i.find(".xubox_close").addClass("xubox_close1"), i.attr({
              type: f.type[e.type]
          }), b.offset(), 4 !== e.type && (e.shift && !layer.ie6 ? "object" == typeof e.shift ? b.shift(e.shift[0], e.shift[1] || 500, e.shift[2]) : b.shift(e.shift, 500) : i.css({
              top: b.offsetTop,
              left: b.offsetLeft
          })), e.type) {
          case 0:
              i.find(g[5]).css({
                  "background-color":
                  "#fff"
              }),
              e.title ? i.find(g[3]).css({
                  paddingTop: 18 + j.outerHeight()
              }) : (i.find(".xubox_msgico").css({
                  top: 8
              }), i.find(g[3]).css({
                  marginTop: 11
              }));
              break;
          case 1:
              i.find(h.dom).addClass("layer_pageContent"),
              e.shade[0] && i.css({
                  zIndex: e.zIndex + 1
              }),
              e.title && i.find(g[4]).css({
                  top: j.outerHeight()
              });
              break;
          case 2:
              var k = i.find("." + g[1]),
              l = i.height();
              k.addClass("xubox_load").css({
                  width: i.width()
              }),
              k.css(e.title ? {
                  top: j.height(),
                  height: l - j.height()
              }: {
                  top: 0,
                  height: l
              }),
              layer.ie6 && k.attr("src", e.iframe.src);
              break;
          case 4:
              var m = [0, i.outerHeight()],
              n = c(e.tips.follow),
              o = {
                  width: n.outerWidth(),
                  height: n.outerHeight(),
                  top: n.offset().top,
                  left: n.offset().left
              },
              p = i.find(".layerTipsG");
              e.tips.isGuide || p.remove(),
              i.outerWidth() > e.maxWidth && i.width(e.maxWidth),
              o.tipColor = e.tips.style[1],
              m[0] = i.outerWidth(),
              o.autoLeft = function() {
                  o.left + m[0] - d.width() > 0 ? (o.tipLeft = o.left + o.width - m[0], p.css({
                      right: 12,
                      left: "auto"
                  })) : o.tipLeft = o.left
              },
              o.where = [function() {
                  o.autoLeft(),
                  o.tipTop = o.top - m[1] - 10,
                  p.removeClass("layerTipsB").addClass("layerTipsT").css({
                      "border-right-color": o.tipColor
                  })
              },
              function() {
                  o.tipLeft = o.left + o.width + 10,
                  o.tipTop = o.top,
                  p.removeClass("layerTipsL").addClass("layerTipsR").css({
                      "border-bottom-color": o.tipColor
                  })
              },
              function() {
                  o.autoLeft(),
                  o.tipTop = o.top + o.height + 10,
                  p.removeClass("layerTipsT").addClass("layerTipsB").css({
                      "border-right-color": o.tipColor
                  })
              },
              function() {
                  o.tipLeft = o.left - m[0] + 10,
                  o.tipTop = o.top,
                  p.removeClass("layerTipsR").addClass("layerTipsL").css({
                      "border-bottom-color": o.tipColor
                  })
              }],
              o.where[e.tips.guide](),
              0 === e.tips.guide ? o.top - (d.scrollTop() + m[1] + 16) < 0 && o.where[2]() : 1 === e.tips.guide ? d.width() - (o.left + o.width + m[0] + 16) > 0 || o.where[3]() : 2 === e.tips.guide ? o.top - d.scrollTop() + o.height + m[1] + 16 - d.height() > 0 && o.where[0]() : 3 === e.tips.guide ? m[0] + 16 - o.left > 0 && o.where[1]() : 4 === e.tips.guide,
              i.css({
                  left: o.tipLeft,
                  top: o.tipTop
              })
          }
          e.fadeIn && (f.fade(i, e.fadeIn, 1), f.fade(c("#xubox_shade" + a), e.fadeIn, e.shade[0])),
          e.fix && "" === e.offset[0] && !e.shift && d.on("resize",
          function() {
              i.css({
                  top: (d.height() - i.outerHeight()) / 2
              })
          }),
          b.move()
      },
      h.pt.shift = function(a, b, c) {
          var e = this,
          f = e.config,
          g = e.layerE,
          h = 0,
          i = d.width(),
          j = d.height() + (f.fix ? 0 : d.scrollTop());
          h = "50%" == f.offset[1] || "" == f.offset[1] ? g.outerWidth() / 2 : g.outerWidth();
          var k = {
              t: {
                  top: e.offsetTop
              },
              b: {
                  top: j - g.outerHeight() - f.border[0]
              },
              cl: h + f.border[0],
              ct: -g.outerHeight(),
              cr: i - h - f.border[0]
          };
          switch (a) {
          case "left-top":
              g.css({
                  left:
                  k.cl,
                  top: k.ct
              }).animate(k.t, b);
              break;
          case "top":
              g.css({
                  top:
                  k.ct
              }).animate(k.t, b);
              break;
          case "right-top":
              g.css({
                  left:
                  k.cr,
                  top: k.ct
              }).animate(k.t, b);
              break;
          case "right-bottom":
              g.css({
                  left:
                  k.cr,
                  top: j
              }).animate(c ? k.t: k.b, b);
              break;
          case "bottom":
              g.css({
                  top:
                  j
              }).animate(c ? k.t: k.b, b);
              break;
          case "left-bottom":
              g.css({
                  left:
                  k.cl,
                  top: j
              }).animate(c ? k.t: k.b, b);
              break;
          case "left":
              g.css({
                  left:
                  -g.outerWidth()
              }).animate({
                  left: e.offsetLeft
              },
              b)
          }
      },
      h.pt.autoArea = function(a) {
          var b, d = this,
          a = a || d.index,
          e = d.config,
          f = e.page,
          h = c("#" + g[0] + a),
          i = h.find(g[2]),
          j = h.find(g[5]),
          k = e.title ? i.innerHeight() : 0,
          l = 0;
          switch ("auto" === e.area[0] && j.outerWidth() >= e.maxWidth && h.css({
              width: e.maxWidth
          }), e.type) {
          case 0:
              var m = h.find(".xubox_botton>a");
              b = h.find(g[3]).outerHeight() + 20,
              m.length > 0 && (l = m.outerHeight() + 20);
              break;
          case 1:
              var n = h.find(g[4]);
              b = c(f.dom).outerHeight(),
              "auto" === e.area[0] && h.css({
                  width: n.outerWidth()
              }),
              ("" !== f.html || "" !== f.url) && (b = n.outerHeight());
              break;
          case 2:
              h.find("iframe").css({
                  width:
                  h.outerWidth(),
                  height: h.outerHeight() - (e.title ? i.innerHeight() : 0)
              });
              break;
          case 3:
              var o = h.find(".xubox_loading");
              b = o.outerHeight(),
              j.css({
                  width: o.width()
              })
          }
          "auto" === e.area[1] && j.css({
              height: k + b + l
          }),
          c("#xubox_border" + a).css({
              width: h.outerWidth() + 2 * e.border[0],
              height: h.outerHeight() + 2 * e.border[0]
          }),
          layer.ie6 && "auto" !== e.area[0] && j.css({
              width: h.outerWidth()
          }),
          h.css("50%" !== e.offset[1] && "" != e.offset[1] || 4 === e.type ? {
              marginLeft: 0
          }: {
              marginLeft: -h.outerWidth() / 2
          })
      },
      h.pt.move = function() {
          var a = this,
          b = a.config,
          e = {
              setY: 0,
              moveLayer: function() {
                  if (0 == parseInt(e.layerE.css("margin-left"))) var a = parseInt(e.move.css("left"));
                  else var a = parseInt(e.move.css("left")) + -parseInt(e.layerE.css("margin-left"));
                  "fixed" !== e.layerE.css("position") && (a -= e.layerE.parent().offset().left, e.setY = 0),
                  e.layerE.css({
                      left: a,
                      top: parseInt(e.move.css("top")) - e.setY
                  })
              }
          },
          f = a.layerE.find(b.move);
          b.move && f.attr("move", "ok"),
          f.css(b.move ? {
              cursor: "move"
          }: {
              cursor: "auto"
          }),
          c(b.move).on("mousedown",
          function(a) {
              if (a.preventDefault(), "ok" === c(this).attr("move")) {
                  e.ismove = !0,
                  e.layerE = c(this).parents("." + g[0]);
                  var f = e.layerE.offset().left,
                  h = e.layerE.offset().top,
                  i = e.layerE.width() - 6,
                  j = e.layerE.height() - 6;
                  c("#xubox_moves")[0] || c("body").append('<div id="xubox_moves" class="xubox_moves" style="left:' + f + "px; top:" + h + "px; width:" + i + "px; height:" + j + 'px; z-index:2147483584"></div>'),
                  e.move = c("#xubox_moves"),
                  b.moveType && e.move.css({
                      opacity: 0
                  }),
                  e.moveX = a.pageX - e.move.position().left,
                  e.moveY = a.pageY - e.move.position().top,
                  "fixed" !== e.layerE.css("position") || (e.setY = d.scrollTop())
              }
          }),
          c(document).mousemove(function(a) {
              if (e.ismove) {
                  var c = a.pageX - e.moveX,
                  f = a.pageY - e.moveY;
                  if (a.preventDefault(), !b.moveOut) {
                      e.setY = d.scrollTop();
                      var g = d.width() - e.move.outerWidth() - b.border[0],
                      h = b.border[0] + e.setY;
                      c < b.border[0] && (c = b.border[0]),
                      c > g && (c = g),
                      h > f && (f = h),
                      f > d.height() - e.move.outerHeight() - b.border[0] + e.setY && (f = d.height() - e.move.outerHeight() - b.border[0] + e.setY)
                  }
                  e.move.css({
                      left: c,
                      top: f
                  }),
                  b.moveType && e.moveLayer(),
                  c = null,
                  f = null,
                  g = null,
                  h = null
              }
          }).mouseup(function() {
              try {
                  e.ismove && (e.moveLayer(), e.move.remove()),
                  e.ismove = !1
              } catch(a) {
                  e.ismove = !1
              }
              b.moveEnd && b.moveEnd()
          })
      },
      h.pt.autoclose = function() {
          var a = this,
          b = a.config.time,
          c = function() {
              b--,
              0 === b && (layer.close(a.index), clearInterval(a.autotime))
          };
          a.autotime = setInterval(c, 1e3)
      },
      f.config = {
          end: {}
      },
      h.pt.callback = function() {
          var a = this,
          b = a.layerE,
          d = a.config,
          e = d.dialog;
          a.openLayer(),
          a.config.success(b),
          layer.ie6 && a.IE6(b),
          b.find(".xubox_close").on("click",
          function() {
              d.close(a.index),
              layer.close(a.index)
          }),
          b.find(".xubox_yes").on("click",
          function() {
              d.yes ? d.yes(a.index) : e.yes(a.index)
          }),
          b.find(".xubox_no").on("click",
          function() {
              d.no ? d.no(a.index) : e.no(a.index),
              layer.close(a.index)
          }),
          a.config.shadeClose && c("#xubox_shade" + a.index).on("click",
          function() {
              layer.close(a.index)
          }),
          b.find(".xubox_min").on("click",
          function() {
              layer.min(a.index, d),
              d.min && d.min(b)
          }),
          b.find(".xubox_max").on("click",
          function() {
              c(this).hasClass("xubox_maxmin") ? (layer.restore(a.index), d.restore && d.restore(b)) : (layer.full(a.index, d), d.full && d.full(b));
          }),
          f.config.end[a.index] = d.end
      },
      f.reselect = function() {
          c.each(c("select"),
          function() {
              var a = c(this);
              a.parents("." + g[0])[0] || 1 == a.attr("layer") && c("." + g[0]).length < 1 && a.removeAttr("layer").show(),
              a = null
          })
      },
      h.pt.IE6 = function(a) {
          var b = this,
          e = a.offset().top;
          if (b.config.fix) var f = function() {
              a.css({
                  top: d.scrollTop() + e
              })
          };
          else var f = function() {
              a.css({
                  top: e
              })
          };
          f(),
          d.scroll(f),
          c.each(c("select"),
          function() {
              var a = c(this);
              a.parents("." + g[0])[0] || "none" == a.css("display") || a.attr({
                  layer: "1"
              }).hide(),
              a = null
          })
      },
      h.pt.openLayer = function() {
          {
              var a = this;
              a.layerE
          }
          layer.autoArea = function(b) {
              return a.autoArea(b)
          },
          layer.shift = function(b, c, d) {
              a.shift(b, c, d)
          },
          layer.setMove = function() {
              return a.move()
          },
          layer.zIndex = a.config.zIndex,
          layer.setTop = function(a) {
              var b = function() {
                  layer.zIndex++,
                  a.css("z-index", layer.zIndex + 1)
              };
              return layer.zIndex = parseInt(a[0].style.zIndex),
              a.on("mousedown", b),
              layer.zIndex
          }
      },
      f.isauto = function(a, b, c) {
          "auto" === b.area[0] && (b.area[0] = a.outerWidth()),
          "auto" === b.area[1] && (b.area[1] = a.outerHeight()),
          a.attr({
              area: b.area + "," + c
          }),
          a.find(".xubox_max").addClass("xubox_maxmin")
      },
      f.rescollbar = function(a) {
          g.html.attr("layer-full") == a && (g.html[0].style.removeProperty ? g.html[0].style.removeProperty("overflow") : g.html[0].style.removeAttribute("overflow"), g.html.removeAttr("layer-full"))
      },
      layer.getIndex = function(a) {
          return c(a).parents("." + g[0]).attr("times")
      },
      layer.getChildFrame = function(a, b) {
          return b = b || c("." + g[1]).parents("." + g[0]).attr("times"),
          c("#" + g[0] + b).find("." + g[1]).contents().find(a)
      },
      layer.getFrameIndex = function(a) {
          return c(a ? "#" + a: "." + g[1]).parents("." + g[0]).attr("times")
      },
      layer.iframeAuto = function(a) {
          a = a || c("." + g[1]).parents("." + g[0]).attr("times");
          var b = layer.getChildFrame("body", a).outerHeight(),
          d = c("#" + g[0] + a),
          e = d.find(g[2]),
          f = 0;
          e && (f = e.height()),
          d.css({
              height: b + f
          });
          var h = -parseInt(c("#xubox_border" + a).css("top"));
          c("#xubox_border" + a).css({
              height: b + 2 * h + f
          }),
          c("#" + g[1] + a).css({
              height: b
          })
      },
      layer.iframeSrc = function(a, b) {
          c("#" + g[0] + a).find("iframe").attr("src", b)
      },
      layer.area = function(a, b) {
          var d = [c("#" + g[0] + a), c("#xubox_border" + a)],
          e = d[0].attr("type"),
          h = d[0].find(g[5]),
          i = d[0].find(g[2]);
          if (e === f.type[1] || e === f.type[2]) {
              if (d[0].css(b), h.css({
                  width: b.width,
                  height: b.height
              }), e === f.type[2]) {
                  var j = d[0].find("iframe");
                  j.css({
                      width: b.width,
                      height: i ? b.height - i.innerHeight() : b.height
                  })
              }
              "0px" !== d[0].css("margin-left") && (b.hasOwnProperty("top") && d[0].css({
                  top: b.top - (d[1][0] ? parseFloat(d[1].css("top")) : 0)
              }), b.hasOwnProperty("left") && d[0].css({
                  left: b.left + d[0].outerWidth() / 2 - (d[1][0] ? parseFloat(d[1].css("left")) : 0)
              }), d[0].css({
                  marginLeft: -d[0].outerWidth() / 2
              })),
              d[1][0] && d[1].css({
                  width: parseFloat(b.width) - 2 * parseFloat(d[1].css("left")),
                  height: parseFloat(b.height) - 2 * parseFloat(d[1].css("top"))
              })
          }
      },
      layer.min = function(a, b) {
          var d = c("#" + g[0] + a),
          e = [d.position().top, d.position().left + parseFloat(d.css("margin-left"))];
          f.isauto(d, b, e),
          layer.area(a, {
              width: 180,
              height: 35
          }),
          d.find(".xubox_min").hide(),
          "page" === d.attr("type") && d.find(g[4]).hide(),
          f.rescollbar(a)
      },
      layer.restore = function(a) {
          {
              var b = c("#" + g[0] + a),
              d = b.attr("area").split(",");
              b.attr("type")
          }
          layer.area(a, {
              width: parseFloat(d[0]),
              height: parseFloat(d[1]),
              top: parseFloat(d[2]),
              left: parseFloat(d[3])
          }),
          b.find(".xubox_max").removeClass("xubox_maxmin"),
          b.find(".xubox_min").show(),
          "page" === b.attr("type") && b.find(g[4]).show(),
          f.rescollbar(a)
      },
      layer.full = function(a, b) {
          var e, h = c("#" + g[0] + a),
          i = 2 * b.border[0] || 6,
          j = [h.position().top, h.position().left + parseFloat(h.css("margin-left"))];
          f.isauto(h, b, j),
          g.html.attr("layer-full") || g.html.css("overflow", "hidden").attr("layer-full", a),
          clearTimeout(e),
          e = setTimeout(function() {
              layer.area(a, {
                  top: "fixed" === h.css("position") ? 0 : d.scrollTop(),
                  left: "fixed" === h.css("position") ? 0 : d.scrollLeft(),
                  width: d.width() - i,
                  height: d.height() - i
              });
          },
          100)
      },
      layer.title = function(a, b) {
          var d = c("#" + g[0] + (b || layer.index)).find(".xubox_title>em");
          d.html(a)
      },
      layer.close = function(a) {
          var b = c("#" + g[0] + a),
          d = b.attr("type"),
          e = c("#xubox_moves, #xubox_shade" + a);
          if (b[0]) {
              if (d == f.type[1]) if (b.find(".xuboxPageHtml")[0]) b[0].innerHTML = "",
              b.remove();
              else {
                  b.find(".xubox_setwin,.xubox_close,.xubox_botton,.xubox_title,.xubox_border").remove();
                  for (var h = 0; 3 > h; h++) b.find(".layer_pageContent").unwrap().hide()
              } else b[0].innerHTML = "",
              b.remove();
              e.remove(),
              layer.ie6 && f.reselect(),
              f.rescollbar(a),
              "function" == typeof f.config.end[a] && f.config.end[a](),
              delete f.config.end[a]
          }
      },
      layer.closeLoad = function() {
          layer.close(c(".xubox_loading").parents("." + g[0]).attr("times"))
      },
      layer.closeTips = function() {
          layer.closeAll("tips")
      },
      layer.closeAll = function(a) {
          c.each(c("." + g[0]),
          function() {
              var b = c(this),
              d = a ? b.attr("type") === a: 1;
              d && layer.close(b.attr("times")),
              d = null
          })
      },
      f.run = function() {
          c = jQuery,
          d = c(a),
          g.html = c("html"),
          layer.use("skin/layer.css"),
          c.layer = function(a) {
              var b = new h(a);
              return b.index
          },
          (new Image).src = layer.path + "skin/default/xubox_ico0.png"
      },
      "function" == typeof define ? define(function() {
          return f.run(),
          layer
      }) : f.run()
  } (window);