{"version":3,"sources":["jsdelivr-header.js","/npm/chlayer@3.1.5/src/layer.js"],"names":[],"mappings":"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","file":"/npm/chlayer@3.1.5/src/layer.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.19.2.\n * Original file: /npm/chlayer@3.1.5/src/layer.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","/**\r\n\r\n @Name：layer v3.1.1 Web弹层组件\r\n @Author：贤心\r\n @Site：http://layer.layui.com\r\n @License：MIT\r\n    \r\n */\r\nimport $ from 'jquery'\r\nif(window.layui && !window.layui.$) {\r\n\twindow.layui.$ = $;\r\n}\r\n;!function(window, undefined){\r\n\"use strict\";\r\n\r\nvar isLayui = window.layui && layui.define, $, win, ready = {\r\n  getPath: function(){\r\n    var jsPath = document.currentScript ? document.currentScript.src : function(){\r\n      var js = document.scripts\r\n      ,last = js.length - 1\r\n      ,src;\r\n      for(var i = last; i > 0; i--){\r\n        if(js[i].readyState === 'interactive'){\r\n          src = js[i].src;\r\n          break;\r\n        }\r\n      }\r\n      return src || js[last].src;\r\n    }();\r\n    return jsPath.substring(0, jsPath.lastIndexOf('/') + 1);\r\n  }(),\r\n\r\n  config: {}, end: {}, minIndex: 0, minLeft: [],\r\n  btn: ['&#x786E;&#x5B9A;', '&#x53D6;&#x6D88;'],\r\n\r\n  //五种原始层模式\r\n  type: ['dialog', 'page', 'iframe', 'loading', 'tips'],\r\n  \r\n  //获取节点的style属性值\r\n  getStyle: function(node, name){\r\n    var style = node.currentStyle ? node.currentStyle : window.getComputedStyle(node, null);\r\n    return style[style.getPropertyValue ? 'getPropertyValue' : 'getAttribute'](name);\r\n  },\r\n  \r\n  //载入CSS配件\r\n  link: function(href, fn, cssname){\r\n    \r\n    //未设置路径，则不主动加载css\r\n    if(!layer.path) return;\r\n    \r\n    var head = document.getElementsByTagName(\"head\")[0], link = document.createElement('link');\r\n    if(typeof fn === 'string') cssname = fn;\r\n    var app = (cssname || href).replace(/\\.|\\//g, '');\r\n    var id = 'layuicss-'+ app, timeout = 0;\r\n    \r\n    link.rel = 'stylesheet';\r\n    link.href = layer.path + href;\r\n    link.id = id;\r\n    \r\n    if(!document.getElementById(id)){\r\n      head.appendChild(link);\r\n    }\r\n    \r\n    if(typeof fn !== 'function') return;\r\n    \r\n    //轮询css是否加载完毕\r\n    (function poll() {\r\n      if(++timeout > 8 * 1000 / 100){\r\n        return window.console && console.error('layer.css: Invalid');\r\n      };\r\n      parseInt(ready.getStyle(document.getElementById(id), 'width')) === 1989 ? fn() : setTimeout(poll, 100);\r\n    }());\r\n  }\r\n};\r\n\r\n//默认内置方法。\r\nvar layer = {\r\n  v: '3.1.1',\r\n  ie: function(){ //ie版本\r\n    var agent = navigator.userAgent.toLowerCase();\r\n    return (!!window.ActiveXObject || \"ActiveXObject\" in window) ? (\r\n      (agent.match(/msie\\s(\\d+)/) || [])[1] || '11' //由于ie11并没有msie的标识\r\n    ) : false;\r\n  }(),\r\n  index: (window.layer && window.layer.v) ? 100000 : 0,\r\n  path: ready.getPath,\r\n  config: function(options, fn){\r\n    options = options || {};\r\n    layer.cache = ready.config = $.extend({}, ready.config, options);\r\n    layer.path = ready.config.path || layer.path;\r\n    typeof options.extend === 'string' && (options.extend = [options.extend]);\r\n    \r\n    if(ready.config.path) layer.ready();\r\n    \r\n    if(!options.extend) return this;\r\n    \r\n    isLayui \r\n      ? layui.addcss('modules/layer/' + options.extend)\r\n    : ready.link('theme/' + options.extend);\r\n    \r\n    return this;\r\n  },\r\n\r\n  //主体CSS等待事件\r\n  ready: function(callback){\r\n    var cssname = 'layer', ver = ''\r\n    ,path = (isLayui ? 'modules/layer/' : 'theme/') + 'default/layer.css?v='+ layer.v + ver;\r\n    isLayui ? layui.addcss(path, callback, cssname) : ready.link(path, callback, cssname);\r\n    return this;\r\n  },\r\n  \r\n  //各种快捷引用\r\n  alert: function(content, options, yes){\r\n    var type = typeof options === 'function';\r\n    if(type) yes = options;\r\n    return layer.open($.extend({\r\n      content: content,\r\n      yes: yes\r\n    }, type ? {} : options));\r\n  }, \r\n  \r\n  confirm: function(content, options, yes, cancel){ \r\n    var type = typeof options === 'function';\r\n    if(type){\r\n      cancel = yes;\r\n      yes = options;\r\n    }\r\n    return layer.open($.extend({\r\n      content: content,\r\n      btn: ready.btn,\r\n      yes: yes,\r\n      btn2: cancel\r\n    }, type ? {} : options));\r\n  },\r\n  \r\n  msg: function(content, options, end){ //最常用提示层\r\n    var type = typeof options === 'function', rskin = ready.config.skin;\r\n    var skin = (rskin ? rskin + ' ' + rskin + '-msg' : '')||'layui-layer-msg';\r\n    var anim = doms.anim.length - 1;\r\n    if(type) end = options;\r\n    return layer.open($.extend({\r\n      content: content,\r\n      time: 3000,\r\n      shade: false,\r\n      skin: skin,\r\n      title: false,\r\n      closeBtn: false,\r\n      btn: false,\r\n      resize: false,\r\n      end: end\r\n    }, (type && !ready.config.skin) ? {\r\n      skin: skin + ' layui-layer-hui',\r\n      anim: anim\r\n    } : function(){\r\n       options = options || {};\r\n       if(options.icon === -1 || options.icon === undefined && !ready.config.skin){\r\n         options.skin = skin + ' ' + (options.skin||'layui-layer-hui');\r\n       }\r\n       return options;\r\n    }()));  \r\n  },\r\n  \r\n  load: function(icon, options){\r\n    return layer.open($.extend({\r\n      type: 3,\r\n      icon: icon || 0,\r\n      resize: false,\r\n      shade: 0.01\r\n    }, options));\r\n  }, \r\n  \r\n  tips: function(content, follow, options){\r\n    return layer.open($.extend({\r\n      type: 4,\r\n      content: [content, follow],\r\n      closeBtn: false,\r\n      time: 3000,\r\n      shade: false,\r\n      resize: false,\r\n      fixed: false,\r\n      maxWidth: 210\r\n    }, options));\r\n  }\r\n};\r\n\r\nvar Class = function(setings){  \r\n  var that = this;\r\n  that.index = ++layer.index;\r\n  that.config = $.extend({}, that.config, ready.config, setings);\r\n  document.body ? that.creat() : setTimeout(function(){\r\n    that.creat();\r\n  }, 30);\r\n};\r\n\r\nClass.pt = Class.prototype;\r\n\r\n//缓存常用字符\r\nvar doms = ['layui-layer', '.layui-layer-title', '.layui-layer-main', '.layui-layer-dialog', 'layui-layer-iframe', 'layui-layer-content', 'layui-layer-btn', 'layui-layer-close'];\r\ndoms.anim = ['layer-anim-00', 'layer-anim-01', 'layer-anim-02', 'layer-anim-03', 'layer-anim-04', 'layer-anim-05', 'layer-anim-06'];\r\n\r\n//默认配置\r\nClass.pt.config = {\r\n  type: 0,\r\n  shade: 0.3,\r\n  fixed: true,\r\n  move: doms[1],\r\n  title: '&#x4FE1;&#x606F;',\r\n  offset: 'auto',\r\n  area: 'auto',\r\n  closeBtn: 1,\r\n  time: 0, //0表示不自动关闭\r\n  zIndex: 19891014, \r\n  maxWidth: 360,\r\n  anim: 0,\r\n  isOutAnim: true,\r\n  icon: -1,\r\n  moveType: 1,\r\n  resize: true,\r\n  scrollbar: true, //是否允许浏览器滚动条\r\n  tips: 2\r\n};\r\n\r\n//容器\r\nClass.pt.vessel = function(conType, callback){\r\n  var that = this, times = that.index, config = that.config;\r\n  var zIndex = config.zIndex + times, titype = typeof config.title === 'object';\r\n  var ismax = config.maxmin && (config.type === 1 || config.type === 2);\r\n  var titleHTML = (config.title ? '<div class=\"layui-layer-title\" style=\"'+ (titype ? config.title[1] : '') +'\">' \r\n    + (titype ? config.title[0] : config.title) \r\n  + '</div>' : '');\r\n  \r\n  config.zIndex = zIndex;\r\n  callback([\r\n    //遮罩\r\n    config.shade ? ('<div class=\"layui-layer-shade\" id=\"layui-layer-shade'+ times +'\" times=\"'+ times +'\" style=\"'+ ('z-index:'+ (zIndex-1) +'; ') +'\"></div>') : '',\r\n    \r\n    //主体\r\n    '<div class=\"'+ doms[0] + (' layui-layer-'+ready.type[config.type]) + (((config.type == 0 || config.type == 2) && !config.shade) ? ' layui-layer-border' : '') + ' ' + (config.skin||'') +'\" id=\"'+ doms[0] + times +'\" type=\"'+ ready.type[config.type] +'\" times=\"'+ times +'\" showtime=\"'+ config.time +'\" conType=\"'+ (conType ? 'object' : 'string') +'\" style=\"z-index: '+ zIndex +'; width:'+ config.area[0] + ';height:' + config.area[1] + (config.fixed ? '' : ';position:absolute;') +'\">'\r\n      + (conType && config.type != 2 ? '' : titleHTML)\r\n      + '<div id=\"'+ (config.id||'') +'\" class=\"layui-layer-content'+ ((config.type == 0 && config.icon !== -1) ? ' layui-layer-padding' :'') + (config.type == 3 ? ' layui-layer-loading'+config.icon : '') +'\">'\r\n        + (config.type == 0 && config.icon !== -1 ? '<i class=\"layui-layer-ico layui-layer-ico'+ config.icon +'\"></i>' : '')\r\n        + (config.type == 1 && conType ? '' : (config.content||''))\r\n      + '</div>'\r\n      + '<span class=\"layui-layer-setwin\">'+ function(){\r\n        var closebtn = ismax ? '<a class=\"layui-layer-min\" href=\"javascript:;\"><cite></cite></a><a class=\"layui-layer-ico layui-layer-max\" href=\"javascript:;\"></a>' : '';\r\n        config.closeBtn && (closebtn += '<a class=\"layui-layer-ico '+ doms[7] +' '+ doms[7] + (config.title ? config.closeBtn : (config.type == 4 ? '1' : '2')) +'\" href=\"javascript:;\"></a>');\r\n        return closebtn;\r\n      }() + '</span>'\r\n      + (config.btn ? function(){\r\n        var button = '';\r\n        typeof config.btn === 'string' && (config.btn = [config.btn]);\r\n        for(var i = 0, len = config.btn.length; i < len; i++){\r\n          button += '<a class=\"'+ doms[6] +''+ i +'\">'+ config.btn[i] +'</a>'\r\n        }\r\n        return '<div class=\"'+ doms[6] +' layui-layer-btn-'+ (config.btnAlign||'') +'\">'+ button +'</div>'\r\n      }() : '')\r\n      + (config.resize ? '<span class=\"layui-layer-resize\"></span>' : '')\r\n    + '</div>'\r\n  ], titleHTML, $('<div class=\"layui-layer-move\"></div>'));\r\n  return that;\r\n};\r\n\r\n//创建骨架\r\nClass.pt.creat = function(){\r\n  var that = this\r\n  ,config = that.config\r\n  ,times = that.index, nodeIndex\r\n  ,content = config.content\r\n  ,conType = typeof content === 'object'\r\n  ,body = $('body');\r\n  \r\n  if(config.id && $('#'+config.id)[0])  return;\r\n\r\n  if(typeof config.area === 'string'){\r\n    config.area = config.area === 'auto' ? ['', ''] : [config.area, ''];\r\n  }\r\n  \r\n  //anim兼容旧版shift\r\n  if(config.shift){\r\n    config.anim = config.shift;\r\n  }\r\n  \r\n  if(layer.ie == 6){\r\n    config.fixed = false;\r\n  }\r\n  \r\n  switch(config.type){\r\n    case 0:\r\n      config.btn = ('btn' in config) ? config.btn : ready.btn[0];\r\n      layer.closeAll('dialog');\r\n    break;\r\n    case 2:\r\n      var content = config.content = conType ? config.content : [config.content||'http://layer.layui.com', 'auto'];\r\n      config.content = '<iframe scrolling=\"'+ (config.content[1]||'auto') +'\" allowtransparency=\"true\" id=\"'+ doms[4] +''+ times +'\" name=\"'+ doms[4] +''+ times +'\" onload=\"this.className=\\'\\';\" class=\"layui-layer-load\" frameborder=\"0\" src=\"' + config.content[0] + '\"></iframe>';\r\n    break;\r\n    case 3:\r\n      delete config.title;\r\n      delete config.closeBtn;\r\n      config.icon === -1 && (config.icon === 0);\r\n      layer.closeAll('loading');\r\n    break;\r\n    case 4:\r\n      conType || (config.content = [config.content, 'body']);\r\n      config.follow = config.content[1];\r\n      config.content = config.content[0] + '<i class=\"layui-layer-TipsG\"></i>';\r\n      delete config.title;\r\n      config.tips = typeof config.tips === 'object' ? config.tips : [config.tips, true];\r\n      config.tipsMore || layer.closeAll('tips');\r\n    break;\r\n  }\r\n  \r\n  //建立容器\r\n  that.vessel(conType, function(html, titleHTML, moveElem){\r\n    body.append(html[0]);\r\n    conType ? function(){\r\n      (config.type == 2 || config.type == 4) ? function(){\r\n        $('body').append(html[1]);\r\n      }() : function(){\r\n        if(!content.parents('.'+doms[0])[0]){\r\n          content.data('display', content.css('display')).show().addClass('layui-layer-wrap').wrap(html[1]);\r\n          $('#'+ doms[0] + times).find('.'+doms[5]).before(titleHTML);\r\n        }\r\n      }();\r\n    }() : body.append(html[1]);\r\n    $('.layui-layer-move')[0] || body.append(ready.moveElem = moveElem);\r\n    that.layero = $('#'+ doms[0] + times);\r\n    config.scrollbar || doms.html.css('overflow', 'hidden').attr('layer-full', times);\r\n  }).auto(times);\r\n  \r\n  //遮罩\r\n  $('#layui-layer-shade'+ that.index).css({\r\n    'background-color': config.shade[1] || '#000'\r\n    ,'opacity': config.shade[0]||config.shade\r\n  });\r\n\r\n  config.type == 2 && layer.ie == 6 && that.layero.find('iframe').attr('src', content[0]);\r\n\r\n  //坐标自适应浏览器窗口尺寸\r\n  config.type == 4 ? that.tips() : that.offset();\r\n  if(config.fixed){\r\n    win.on('resize', function(){\r\n      that.offset();\r\n      (/^\\d+%$/.test(config.area[0]) || /^\\d+%$/.test(config.area[1])) && that.auto(times);\r\n      config.type == 4 && that.tips();\r\n    });\r\n  }\r\n  \r\n  config.time <= 0 || setTimeout(function(){\r\n    layer.close(that.index)\r\n  }, config.time);\r\n  that.move().callback();\r\n  \r\n  //为兼容jQuery3.0的css动画影响元素尺寸计算\r\n  if(doms.anim[config.anim]){\r\n    var animClass = 'layer-anim '+ doms.anim[config.anim];\r\n    that.layero.addClass(animClass).one('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function(){\r\n      $(this).removeClass(animClass);\r\n    });\r\n  };\r\n  \r\n  //记录关闭动画\r\n  if(config.isOutAnim){\r\n    that.layero.data('isOutAnim', true);\r\n  }\r\n};\r\n\r\n//自适应\r\nClass.pt.auto = function(index){\r\n  var that = this, config = that.config, layero = $('#'+ doms[0] + index);\r\n  \r\n  if(config.area[0] === '' && config.maxWidth > 0){\r\n    //为了修复IE7下一个让人难以理解的bug\r\n    if(layer.ie && layer.ie < 8 && config.btn){\r\n      layero.width(layero.innerWidth());\r\n    }\r\n    layero.outerWidth() > config.maxWidth && layero.width(config.maxWidth);\r\n  }\r\n  \r\n  var area = [layero.innerWidth(), layero.innerHeight()]\r\n  ,titHeight = layero.find(doms[1]).outerHeight() || 0\r\n  ,btnHeight = layero.find('.'+doms[6]).outerHeight() || 0\r\n  ,setHeight = function(elem){\r\n    elem = layero.find(elem);\r\n    elem.height(area[1] - titHeight - btnHeight - 2*(parseFloat(elem.css('padding-top'))|0));\r\n  };\r\n\r\n  switch(config.type){\r\n    case 2: \r\n      setHeight('iframe');\r\n    break;\r\n    default:\r\n      if(config.area[1] === ''){\r\n        if(config.maxHeight > 0 && layero.outerHeight() > config.maxHeight){\r\n          area[1] = config.maxHeight;\r\n          setHeight('.'+doms[5]);\r\n        } else if(config.fixed && area[1] >= win.height()){\r\n          area[1] = win.height();\r\n          setHeight('.'+doms[5]);\r\n        }\r\n      } else {\r\n        setHeight('.'+doms[5]);\r\n      }\r\n    break;\r\n  };\r\n  \r\n  return that;\r\n};\r\n\r\n//计算坐标\r\nClass.pt.offset = function(){\r\n  var that = this, config = that.config, layero = that.layero;\r\n  var area = [layero.outerWidth(), layero.outerHeight()];\r\n  var type = typeof config.offset === 'object';\r\n  that.offsetTop = (win.height() - area[1])/2;\r\n  that.offsetLeft = (win.width() - area[0])/2;\r\n  \r\n  if(type){\r\n    that.offsetTop = config.offset[0];\r\n    that.offsetLeft = config.offset[1]||that.offsetLeft;\r\n  } else if(config.offset !== 'auto'){\r\n    \r\n    if(config.offset === 't'){ //上\r\n      that.offsetTop = 0;\r\n    } else if(config.offset === 'r'){ //右\r\n      that.offsetLeft = win.width() - area[0];\r\n    } else if(config.offset === 'b'){ //下\r\n      that.offsetTop = win.height() - area[1];\r\n    } else if(config.offset === 'l'){ //左\r\n      that.offsetLeft = 0;\r\n    } else if(config.offset === 'lt'){ //左上角\r\n      that.offsetTop = 0;\r\n      that.offsetLeft = 0;\r\n    } else if(config.offset === 'lb'){ //左下角\r\n      that.offsetTop = win.height() - area[1];\r\n      that.offsetLeft = 0;\r\n    } else if(config.offset === 'rt'){ //右上角\r\n      that.offsetTop = 0;\r\n      that.offsetLeft = win.width() - area[0];\r\n    } else if(config.offset === 'rb'){ //右下角\r\n      that.offsetTop = win.height() - area[1];\r\n      that.offsetLeft = win.width() - area[0];\r\n    } else {\r\n      that.offsetTop = config.offset;\r\n    }\r\n    \r\n  }\r\n \r\n  if(!config.fixed){\r\n    that.offsetTop = /%$/.test(that.offsetTop) ? \r\n      win.height()*parseFloat(that.offsetTop)/100\r\n    : parseFloat(that.offsetTop);\r\n    that.offsetLeft = /%$/.test(that.offsetLeft) ? \r\n      win.width()*parseFloat(that.offsetLeft)/100\r\n    : parseFloat(that.offsetLeft);\r\n    that.offsetTop += win.scrollTop();\r\n    that.offsetLeft += win.scrollLeft();\r\n  }\r\n  \r\n  if(layero.attr('minLeft')){\r\n    that.offsetTop = win.height() - (layero.find(doms[1]).outerHeight() || 0);\r\n    that.offsetLeft = layero.css('left');\r\n  }\r\n\r\n  layero.css({top: that.offsetTop, left: that.offsetLeft});\r\n};\r\n\r\n//Tips\r\nClass.pt.tips = function(){\r\n  var that = this, config = that.config, layero = that.layero;\r\n  var layArea = [layero.outerWidth(), layero.outerHeight()], follow = $(config.follow);\r\n  if(!follow[0]) follow = $('body');\r\n  var goal = {\r\n    width: follow.outerWidth(),\r\n    height: follow.outerHeight(),\r\n    top: follow.offset().top,\r\n    left: follow.offset().left\r\n  }, tipsG = layero.find('.layui-layer-TipsG');\r\n  \r\n  var guide = config.tips[0];\r\n  config.tips[1] || tipsG.remove();\r\n  \r\n  goal.autoLeft = function(){\r\n    if(goal.left + layArea[0] - win.width() > 0){\r\n      goal.tipLeft = goal.left + goal.width - layArea[0];\r\n      tipsG.css({right: 12, left: 'auto'});\r\n    } else {\r\n      goal.tipLeft = goal.left;\r\n    };\r\n  };\r\n  \r\n  //辨别tips的方位\r\n  goal.where = [function(){ //上        \r\n    goal.autoLeft();\r\n    goal.tipTop = goal.top - layArea[1] - 10;\r\n    tipsG.removeClass('layui-layer-TipsB').addClass('layui-layer-TipsT').css('border-right-color', config.tips[1]);\r\n  }, function(){ //右\r\n    goal.tipLeft = goal.left + goal.width + 10;\r\n    goal.tipTop = goal.top;\r\n    tipsG.removeClass('layui-layer-TipsL').addClass('layui-layer-TipsR').css('border-bottom-color', config.tips[1]); \r\n  }, function(){ //下\r\n    goal.autoLeft();\r\n    goal.tipTop = goal.top + goal.height + 10;\r\n    tipsG.removeClass('layui-layer-TipsT').addClass('layui-layer-TipsB').css('border-right-color', config.tips[1]);\r\n  }, function(){ //左\r\n    goal.tipLeft = goal.left - layArea[0] - 10;\r\n    goal.tipTop = goal.top;\r\n    tipsG.removeClass('layui-layer-TipsR').addClass('layui-layer-TipsL').css('border-bottom-color', config.tips[1]);\r\n  }];\r\n  goal.where[guide-1]();\r\n  \r\n  /* 8*2为小三角形占据的空间 */\r\n  if(guide === 1){\r\n    goal.top - (win.scrollTop() + layArea[1] + 8*2) < 0 && goal.where[2]();\r\n  } else if(guide === 2){\r\n    win.width() - (goal.left + goal.width + layArea[0] + 8*2) > 0 || goal.where[3]()\r\n  } else if(guide === 3){\r\n    (goal.top - win.scrollTop() + goal.height + layArea[1] + 8*2) - win.height() > 0 && goal.where[0]();\r\n  } else if(guide === 4){\r\n     layArea[0] + 8*2 - goal.left > 0 && goal.where[1]()\r\n  }\r\n\r\n  layero.find('.'+doms[5]).css({\r\n    'background-color': config.tips[1], \r\n    'padding-right': (config.closeBtn ? '30px' : '')\r\n  });\r\n  layero.css({\r\n    left: goal.tipLeft - (config.fixed ? win.scrollLeft() : 0), \r\n    top: goal.tipTop  - (config.fixed ? win.scrollTop() : 0)\r\n  });\r\n}\r\n\r\n//拖拽层\r\nClass.pt.move = function(){\r\n  var that = this\r\n  ,config = that.config\r\n  ,_DOC = $(document)\r\n  ,layero = that.layero\r\n  ,moveElem = layero.find(config.move)\r\n  ,resizeElem = layero.find('.layui-layer-resize')\r\n  ,dict = {};\r\n  \r\n  if(config.move){\r\n    moveElem.css('cursor', 'move');\r\n  }\r\n\r\n  moveElem.on('mousedown', function(e){\r\n    e.preventDefault();\r\n    if(config.move){\r\n      dict.moveStart = true;\r\n      dict.offset = [\r\n        e.clientX - parseFloat(layero.css('left'))\r\n        ,e.clientY - parseFloat(layero.css('top'))\r\n      ];\r\n      ready.moveElem.css('cursor', 'move').show();\r\n    }\r\n  });\r\n  \r\n  resizeElem.on('mousedown', function(e){\r\n    e.preventDefault();\r\n    dict.resizeStart = true;\r\n    dict.offset = [e.clientX, e.clientY];\r\n    dict.area = [\r\n      layero.outerWidth()\r\n      ,layero.outerHeight()\r\n    ];\r\n    ready.moveElem.css('cursor', 'se-resize').show();\r\n  });\r\n  \r\n  _DOC.on('mousemove', function(e){\r\n\r\n    //拖拽移动\r\n    if(dict.moveStart){\r\n      var X = e.clientX - dict.offset[0]\r\n      ,Y = e.clientY - dict.offset[1]\r\n      ,fixed = layero.css('position') === 'fixed';\r\n      \r\n      e.preventDefault();\r\n      \r\n      dict.stX = fixed ? 0 : win.scrollLeft();\r\n      dict.stY = fixed ? 0 : win.scrollTop();\r\n\r\n      //控制元素不被拖出窗口外\r\n      if(!config.moveOut){\r\n        var setRig = win.width() - layero.outerWidth() + dict.stX\r\n        ,setBot = win.height() - layero.outerHeight() + dict.stY;  \r\n        X < dict.stX && (X = dict.stX);\r\n        X > setRig && (X = setRig); \r\n        Y < dict.stY && (Y = dict.stY);\r\n        Y > setBot && (Y = setBot);\r\n      }\r\n      \r\n      layero.css({\r\n        left: X\r\n        ,top: Y\r\n      });\r\n    }\r\n    \r\n    //Resize\r\n    if(config.resize && dict.resizeStart){\r\n      var X = e.clientX - dict.offset[0]\r\n      ,Y = e.clientY - dict.offset[1];\r\n      \r\n      e.preventDefault();\r\n      \r\n      layer.style(that.index, {\r\n        width: dict.area[0] + X\r\n        ,height: dict.area[1] + Y\r\n      })\r\n      dict.isResize = true;\r\n      config.resizing && config.resizing(layero);\r\n    }\r\n  }).on('mouseup', function(e){\r\n    if(dict.moveStart){\r\n      delete dict.moveStart;\r\n      ready.moveElem.hide();\r\n      config.moveEnd && config.moveEnd(layero);\r\n    }\r\n    if(dict.resizeStart){\r\n      delete dict.resizeStart;\r\n      ready.moveElem.hide();\r\n    }\r\n  });\r\n  \r\n  return that;\r\n};\r\n\r\nClass.pt.callback = function(){\r\n  var that = this, layero = that.layero, config = that.config;\r\n  that.openLayer();\r\n  if(config.success){\r\n    if(config.type == 2){\r\n      layero.find('iframe').on('load', function(){\r\n        config.success(layero, that.index);\r\n      });\r\n    } else {\r\n      config.success(layero, that.index);\r\n    }\r\n  }\r\n  layer.ie == 6 && that.IE6(layero);\r\n  \r\n  //按钮\r\n  layero.find('.'+ doms[6]).children('a').on('click', function(){\r\n    var index = $(this).index();\r\n    if(index === 0){\r\n      if(config.yes){\r\n        config.yes(that.index, layero)\r\n      } else if(config['btn1']){\r\n        config['btn1'](that.index, layero)\r\n      } else {\r\n        layer.close(that.index);\r\n      }\r\n    } else {\r\n      var close = config['btn'+(index+1)] && config['btn'+(index+1)](that.index, layero);\r\n      close === false || layer.close(that.index);\r\n    }\r\n  });\r\n  \r\n  //取消\r\n  function cancel(){\r\n    var close = config.cancel && config.cancel(that.index, layero);\r\n    close === false || layer.close(that.index);\r\n  }\r\n  \r\n  //右上角关闭回调\r\n  layero.find('.'+ doms[7]).on('click', cancel);\r\n  \r\n  //点遮罩关闭\r\n  if(config.shadeClose){\r\n    $('#layui-layer-shade'+ that.index).on('click', function(){\r\n      layer.close(that.index);\r\n    });\r\n  } \r\n  \r\n  //最小化\r\n  layero.find('.layui-layer-min').on('click', function(){\r\n    var min = config.min && config.min(layero);\r\n    min === false || layer.min(that.index, config); \r\n  });\r\n  \r\n  //全屏/还原\r\n  layero.find('.layui-layer-max').on('click', function(){\r\n    if($(this).hasClass('layui-layer-maxmin')){\r\n      layer.restore(that.index);\r\n      config.restore && config.restore(layero);\r\n    } else {\r\n      layer.full(that.index, config);\r\n      setTimeout(function(){\r\n        config.full && config.full(layero);\r\n      }, 100);\r\n    }\r\n  });\r\n\r\n  config.end && (ready.end[that.index] = config.end);\r\n};\r\n\r\n//for ie6 恢复select\r\nready.reselect = function(){\r\n  $.each($('select'), function(index , value){\r\n    var sthis = $(this);\r\n    if(!sthis.parents('.'+doms[0])[0]){\r\n      (sthis.attr('layer') == 1 && $('.'+doms[0]).length < 1) && sthis.removeAttr('layer').show(); \r\n    }\r\n    sthis = null;\r\n  });\r\n}; \r\n\r\nClass.pt.IE6 = function(layero){\r\n  //隐藏select\r\n  $('select').each(function(index , value){\r\n    var sthis = $(this);\r\n    if(!sthis.parents('.'+doms[0])[0]){\r\n      sthis.css('display') === 'none' || sthis.attr({'layer' : '1'}).hide();\r\n    }\r\n    sthis = null;\r\n  });\r\n};\r\n\r\n//需依赖原型的对外方法\r\nClass.pt.openLayer = function(){\r\n  var that = this;\r\n  \r\n  //置顶当前窗口\r\n  layer.zIndex = that.config.zIndex;\r\n  layer.setTop = function(layero){\r\n    var setZindex = function(){\r\n      layer.zIndex++;\r\n      layero.css('z-index', layer.zIndex + 1);\r\n    };\r\n    layer.zIndex = parseInt(layero[0].style.zIndex);\r\n    layero.on('mousedown', setZindex);\r\n    return layer.zIndex;\r\n  };\r\n};\r\n\r\nready.record = function(layero){\r\n  var area = [\r\n    layero.width(),\r\n    layero.height(),\r\n    layero.position().top, \r\n    layero.position().left + parseFloat(layero.css('margin-left'))\r\n  ];\r\n  layero.find('.layui-layer-max').addClass('layui-layer-maxmin');\r\n  layero.attr({area: area});\r\n};\r\n\r\nready.rescollbar = function(index){\r\n  if(doms.html.attr('layer-full') == index){\r\n    if(doms.html[0].style.removeProperty){\r\n      doms.html[0].style.removeProperty('overflow');\r\n    } else {\r\n      doms.html[0].style.removeAttribute('overflow');\r\n    }\r\n    doms.html.removeAttr('layer-full');\r\n  }\r\n};\r\n\r\n/** 内置成员 */\r\n\r\nwindow.layer = layer;\r\n\r\n//获取子iframe的DOM\r\nlayer.getChildFrame = function(selector, index){\r\n  index = index || $('.'+doms[4]).attr('times');\r\n  return $('#'+ doms[0] + index).find('iframe').contents().find(selector);  \r\n};\r\n\r\n//得到当前iframe层的索引，子iframe时使用\r\nlayer.getFrameIndex = function(name){\r\n  return $('#'+ name).parents('.'+doms[4]).attr('times');\r\n};\r\n\r\n//iframe层自适应宽高\r\nlayer.iframeAuto = function(index){\r\n  if(!index) return;\r\n  var heg = layer.getChildFrame('html', index).outerHeight();\r\n  var layero = $('#'+ doms[0] + index);\r\n  var titHeight = layero.find(doms[1]).outerHeight() || 0;\r\n  var btnHeight = layero.find('.'+doms[6]).outerHeight() || 0;\r\n  layero.css({height: heg + titHeight + btnHeight});\r\n  layero.find('iframe').css({height: heg});\r\n};\r\n\r\n//重置iframe url\r\nlayer.iframeSrc = function(index, url){\r\n  $('#'+ doms[0] + index).find('iframe').attr('src', url);\r\n};\r\n\r\n//设定层的样式\r\nlayer.style = function(index, options, limit){\r\n  var layero = $('#'+ doms[0] + index)\r\n  ,contElem = layero.find('.layui-layer-content')\r\n  ,type = layero.attr('type')\r\n  ,titHeight = layero.find(doms[1]).outerHeight() || 0\r\n  ,btnHeight = layero.find('.'+doms[6]).outerHeight() || 0\r\n  ,minLeft = layero.attr('minLeft');\r\n  \r\n  if(type === ready.type[3] || type === ready.type[4]){\r\n    return;\r\n  }\r\n  \r\n  if(!limit){\r\n    if(parseFloat(options.width) <= 260){\r\n      options.width = 260;\r\n    };\r\n    \r\n    if(parseFloat(options.height) - titHeight - btnHeight <= 64){\r\n      options.height = 64 + titHeight + btnHeight;\r\n    };\r\n  }\r\n  \r\n  layero.css(options);\r\n  btnHeight = layero.find('.'+doms[6]).outerHeight();\r\n  \r\n  if(type === ready.type[2]){\r\n    layero.find('iframe').css({\r\n      height: parseFloat(options.height) - titHeight - btnHeight\r\n    });\r\n  } else {\r\n    contElem.css({\r\n      height: parseFloat(options.height) - titHeight - btnHeight\r\n      - parseFloat(contElem.css('padding-top'))\r\n      - parseFloat(contElem.css('padding-bottom'))\r\n    })\r\n  }\r\n};\r\n\r\n//最小化\r\nlayer.min = function(index, options){\r\n  var layero = $('#'+ doms[0] + index)\r\n  ,titHeight = layero.find(doms[1]).outerHeight() || 0\r\n  ,left = layero.attr('minLeft') || (181*ready.minIndex)+'px'\r\n  ,position = layero.css('position');\r\n  \r\n  ready.record(layero);\r\n  \r\n  if(ready.minLeft[0]){\r\n    left = ready.minLeft[0];\r\n    ready.minLeft.shift();\r\n  }\r\n  \r\n  layero.attr('position', position);\r\n  \r\n  layer.style(index, {\r\n    width: 180\r\n    ,height: titHeight\r\n    ,left: left\r\n    ,top: win.height() - titHeight\r\n    ,position: 'fixed'\r\n    ,overflow: 'hidden'\r\n  }, true);\r\n\r\n  layero.find('.layui-layer-min').hide();\r\n  layero.attr('type') === 'page' && layero.find(doms[4]).hide();\r\n  ready.rescollbar(index);\r\n  \r\n  if(!layero.attr('minLeft')){\r\n    ready.minIndex++;\r\n  }\r\n  layero.attr('minLeft', left);\r\n};\r\n\r\n//还原\r\nlayer.restore = function(index){\r\n  var layero = $('#'+ doms[0] + index), area = layero.attr('area').split(',');\r\n  var type = layero.attr('type');\r\n  layer.style(index, {\r\n    width: parseFloat(area[0]), \r\n    height: parseFloat(area[1]), \r\n    top: parseFloat(area[2]), \r\n    left: parseFloat(area[3]),\r\n    position: layero.attr('position'),\r\n    overflow: 'visible'\r\n  }, true);\r\n  layero.find('.layui-layer-max').removeClass('layui-layer-maxmin');\r\n  layero.find('.layui-layer-min').show();\r\n  layero.attr('type') === 'page' && layero.find(doms[4]).show();\r\n  ready.rescollbar(index);\r\n};\r\n\r\n//全屏\r\nlayer.full = function(index){\r\n  var layero = $('#'+ doms[0] + index), timer;\r\n  ready.record(layero);\r\n  if(!doms.html.attr('layer-full')){\r\n    doms.html.css('overflow','hidden').attr('layer-full', index);\r\n  }\r\n  clearTimeout(timer);\r\n  timer = setTimeout(function(){\r\n    var isfix = layero.css('position') === 'fixed';\r\n    layer.style(index, {\r\n      top: isfix ? 0 : win.scrollTop(),\r\n      left: isfix ? 0 : win.scrollLeft(),\r\n      width: win.width(),\r\n      height: win.height()\r\n    }, true);\r\n    layero.find('.layui-layer-min').hide();\r\n  }, 100);\r\n};\r\n\r\n//改变title\r\nlayer.title = function(name, index){\r\n  var title = $('#'+ doms[0] + (index||layer.index)).find(doms[1]);\r\n  title.html(name);\r\n};\r\n\r\n//关闭layer总方法\r\nlayer.close = function(index){\r\n  var layero = $('#'+ doms[0] + index), type = layero.attr('type'), closeAnim = 'layer-anim-close';\r\n  if(!layero[0]) return;\r\n  var WRAP = 'layui-layer-wrap', remove = function(){\r\n    if(type === ready.type[1] && layero.attr('conType') === 'object'){\r\n      layero.children(':not(.'+ doms[5] +')').remove();\r\n      var wrap = layero.find('.'+WRAP);\r\n      for(var i = 0; i < 2; i++){\r\n        wrap.unwrap();\r\n      }\r\n      wrap.css('display', wrap.data('display')).removeClass(WRAP);\r\n    } else {\r\n      //低版本IE 回收 iframe\r\n      if(type === ready.type[2]){\r\n        try {\r\n          var iframe = $('#'+doms[4]+index)[0];\r\n          iframe.contentWindow.document.write('');\r\n          iframe.contentWindow.close();\r\n          layero.find('.'+doms[5])[0].removeChild(iframe);\r\n        } catch(e){}\r\n      }\r\n      layero[0].innerHTML = '';\r\n      layero.remove();\r\n    }\r\n    typeof ready.end[index] === 'function' && ready.end[index]();\r\n    delete ready.end[index];\r\n  };\r\n  \r\n  if(layero.data('isOutAnim')){\r\n    layero.addClass('layer-anim '+ closeAnim);\r\n  }\r\n  \r\n  $('#layui-layer-moves, #layui-layer-shade' + index).remove();\r\n  layer.ie == 6 && ready.reselect();\r\n  ready.rescollbar(index); \r\n  if(layero.attr('minLeft')){\r\n    ready.minIndex--;\r\n    ready.minLeft.push(layero.attr('minLeft'));\r\n  }\r\n  \r\n  if((layer.ie && layer.ie < 10) || !layero.data('isOutAnim')){\r\n    remove()\r\n  } else {\r\n    setTimeout(function(){\r\n      remove();\r\n    }, 200);\r\n  }\r\n};\r\n\r\n//关闭所有层\r\nlayer.closeAll = function(type){\r\n  $.each($('.'+doms[0]), function(){\r\n    var othis = $(this);\r\n    var is = type ? (othis.attr('type') === type) : 1;\r\n    is && layer.close(othis.attr('times'));\r\n    is = null;\r\n  });\r\n};\r\n\r\n/** \r\n\r\n  拓展模块，layui开始合并在一起\r\n\r\n */\r\n\r\nvar cache = layer.cache||{}, skin = function(type){\r\n  return (cache.skin ? (' ' + cache.skin + ' ' + cache.skin + '-'+type) : '');\r\n}; \r\n \r\n//仿系统prompt\r\nlayer.prompt = function(options, yes){\r\n  var style = '';\r\n  options = options || {};\r\n  \r\n  if(typeof options === 'function') yes = options;\r\n  \r\n  if(options.area){\r\n    var area = options.area;\r\n    style = 'style=\"width: '+ area[0] +'; height: '+ area[1] + ';\"';\r\n    delete options.area;\r\n  }\r\n  var prompt, content = options.formType == 2 ? '<textarea class=\"layui-layer-input\"' + style +'>' + (options.value||'') +'</textarea>' : function(){\r\n    return '<input type=\"'+ (options.formType == 1 ? 'password' : 'text') +'\" class=\"layui-layer-input\" value=\"'+ (options.value||'') +'\">';\r\n  }();\r\n  \r\n  var success = options.success;\r\n  delete options.success;\r\n  \r\n  return layer.open($.extend({\r\n    type: 1\r\n    ,btn: ['&#x786E;&#x5B9A;','&#x53D6;&#x6D88;']\r\n    ,content: content\r\n    ,skin: 'layui-layer-prompt' + skin('prompt')\r\n    ,maxWidth: win.width()\r\n    ,success: function(layero){\r\n      prompt = layero.find('.layui-layer-input');\r\n      prompt.focus();\r\n      typeof success === 'function' && success(layero);\r\n    }\r\n    ,resize: false\r\n    ,yes: function(index){\r\n      var value = prompt.val();\r\n      if(value === ''){\r\n        prompt.focus();\r\n      } else if(value.length > (options.maxlength||500)) {\r\n        layer.tips('&#x6700;&#x591A;&#x8F93;&#x5165;'+ (options.maxlength || 500) +'&#x4E2A;&#x5B57;&#x6570;', prompt, {tips: 1});\r\n      } else {\r\n        yes && yes(value, index, prompt);\r\n      }\r\n    }\r\n  }, options));\r\n};\r\n\r\n//tab层\r\nlayer.tab = function(options){\r\n  options = options || {};\r\n  \r\n  var tab = options.tab || {}\r\n  ,THIS = 'layui-this'\r\n  ,success = options.success;\r\n  \r\n  delete options.success;\r\n  \r\n  return layer.open($.extend({\r\n    type: 1,\r\n    skin: 'layui-layer-tab' + skin('tab'),\r\n    resize: false,\r\n    title: function(){\r\n      var len = tab.length, ii = 1, str = '';\r\n      if(len > 0){\r\n        str = '<span class=\"'+ THIS +'\">'+ tab[0].title +'</span>';\r\n        for(; ii < len; ii++){\r\n          str += '<span>'+ tab[ii].title +'</span>';\r\n        }\r\n      }\r\n      return str;\r\n    }(),\r\n    content: '<ul class=\"layui-layer-tabmain\">'+ function(){\r\n      var len = tab.length, ii = 1, str = '';\r\n      if(len > 0){\r\n        str = '<li class=\"layui-layer-tabli '+ THIS +'\">'+ (tab[0].content || 'no content') +'</li>';\r\n        for(; ii < len; ii++){\r\n          str += '<li class=\"layui-layer-tabli\">'+ (tab[ii].content || 'no  content') +'</li>';\r\n        }\r\n      }\r\n      return str;\r\n    }() +'</ul>',\r\n    success: function(layero){\r\n      var btn = layero.find('.layui-layer-title').children();\r\n      var main = layero.find('.layui-layer-tabmain').children();\r\n      btn.on('mousedown', function(e){\r\n        e.stopPropagation ? e.stopPropagation() : e.cancelBubble = true;\r\n        var othis = $(this), index = othis.index();\r\n        othis.addClass(THIS).siblings().removeClass(THIS);\r\n        main.eq(index).show().siblings().hide();\r\n        typeof options.change === 'function' && options.change(index);\r\n      });\r\n      typeof success === 'function' && success(layero);\r\n    }\r\n  }, options));\r\n};\r\n\r\n//相册层\r\nlayer.photos = function(options, loop, key){\r\n  var dict = {};\r\n  options = options || {};\r\n  if(!options.photos) return;\r\n  var type = options.photos.constructor === Object;\r\n  var photos = type ? options.photos : {}, data = photos.data || [];\r\n  var start = photos.start || 0;\r\n  dict.imgIndex = (start|0) + 1;\r\n  \r\n  options.img = options.img || 'img';\r\n  \r\n  var success = options.success;\r\n  delete options.success;\r\n\r\n  if(!type){ //页面直接获取\r\n    var parent = $(options.photos), pushData = function(){\r\n      data = [];\r\n      parent.find(options.img).each(function(index){\r\n        var othis = $(this);\r\n        othis.attr('layer-index', index);\r\n        data.push({\r\n          alt: othis.attr('alt'),\r\n          pid: othis.attr('layer-pid'),\r\n          src: othis.attr('layer-src') || othis.attr('src'),\r\n          thumb: othis.attr('src')\r\n        });\r\n      })\r\n    };\r\n    \r\n    pushData();\r\n    \r\n    if (data.length === 0) return;\r\n    \r\n    loop || parent.on('click', options.img, function(){\r\n      var othis = $(this), index = othis.attr('layer-index'); \r\n      layer.photos($.extend(options, {\r\n        photos: {\r\n          start: index,\r\n          data: data,\r\n          tab: options.tab\r\n        },\r\n        full: options.full\r\n      }), true);\r\n      pushData();\r\n    })\r\n    \r\n    //不直接弹出\r\n    if(!loop) return;\r\n    \r\n  } else if (data.length === 0){\r\n    return layer.msg('&#x6CA1;&#x6709;&#x56FE;&#x7247;');\r\n  }\r\n  \r\n  //上一张\r\n  dict.imgprev = function(key){\r\n    dict.imgIndex--;\r\n    if(dict.imgIndex < 1){\r\n      dict.imgIndex = data.length;\r\n    }\r\n    dict.tabimg(key);\r\n  };\r\n  \r\n  //下一张\r\n  dict.imgnext = function(key,errorMsg){\r\n    dict.imgIndex++;\r\n    if(dict.imgIndex > data.length){\r\n      dict.imgIndex = 1;\r\n      if (errorMsg) {return};\r\n    }\r\n    dict.tabimg(key)\r\n  };\r\n  \r\n  //方向键\r\n  dict.keyup = function(event){\r\n    if(!dict.end){\r\n      var code = event.keyCode;\r\n      event.preventDefault();\r\n      if(code === 37){\r\n        dict.imgprev(true);\r\n      } else if(code === 39) {\r\n        dict.imgnext(true);\r\n      } else if(code === 27) {\r\n        layer.close(dict.index);\r\n      }\r\n    }\r\n  }\r\n  \r\n  //切换\r\n  dict.tabimg = function(key){\r\n    if(data.length <= 1) return;\r\n    photos.start = dict.imgIndex - 1;\r\n    layer.close(dict.index);\r\n    return layer.photos(options, true, key);\r\n    setTimeout(function(){\r\n      layer.photos(options, true, key);\r\n    }, 200);\r\n  }\r\n  \r\n  //一些动作\r\n  dict.event = function(){\r\n    dict.bigimg.hover(function(){\r\n      dict.imgsee.show();\r\n    }, function(){\r\n      dict.imgsee.hide();\r\n    });\r\n    \r\n    dict.bigimg.find('.layui-layer-imgprev').on('click', function(event){\r\n      event.preventDefault();\r\n      dict.imgprev();\r\n    });  \r\n    \r\n    dict.bigimg.find('.layui-layer-imgnext').on('click', function(event){     \r\n      event.preventDefault();\r\n      dict.imgnext();\r\n    });\r\n    \r\n    $(document).on('keyup', dict.keyup);\r\n  };\r\n  \r\n  //图片预加载\r\n  function loadImage(url, callback, error) {   \r\n    var img = new Image();\r\n    img.src = url; \r\n    if(img.complete){\r\n      return callback(img);\r\n    }\r\n    img.onload = function(){\r\n      img.onload = null;\r\n      callback(img);\r\n    };\r\n    img.onerror = function(e){\r\n      img.onerror = null;\r\n      error(e);\r\n    };  \r\n  };\r\n  \r\n  dict.loadi = layer.load(1, {\r\n    shade: 'shade' in options ? false : 0.9,\r\n    scrollbar: false\r\n  });\r\n\r\n  loadImage(data[start].src, function(img){\r\n    layer.close(dict.loadi);\r\n    dict.index = layer.open($.extend({\r\n      type: 1,\r\n      id: 'layui-layer-photos',\r\n      area: function(){\r\n        var imgarea = [img.width, img.height];\r\n        var winarea = [$(window).width() - 100, $(window).height() - 100];\r\n        \r\n        //如果 实际图片的宽或者高比 屏幕大（那么进行缩放）\r\n        if(!options.full && (imgarea[0]>winarea[0]||imgarea[1]>winarea[1])){\r\n          var wh = [imgarea[0]/winarea[0],imgarea[1]/winarea[1]];//取宽度缩放比例、高度缩放比例\r\n          if(wh[0] > wh[1]){//取缩放比例最大的进行缩放\r\n            imgarea[0] = imgarea[0]/wh[0];\r\n            imgarea[1] = imgarea[1]/wh[0];\r\n          } else if(wh[0] < wh[1]){\r\n            imgarea[0] = imgarea[0]/wh[1];\r\n            imgarea[1] = imgarea[1]/wh[1];\r\n          }\r\n        }\r\n        \r\n        return [imgarea[0]+'px', imgarea[1]+'px']; \r\n      }(),\r\n      title: false,\r\n      shade: 0.9,\r\n      shadeClose: true,\r\n      closeBtn: false,\r\n      move: '.layui-layer-phimg img',\r\n      moveType: 1,\r\n      scrollbar: false,\r\n      moveOut: true,\r\n      //anim: Math.random()*5|0,\r\n      isOutAnim: false,\r\n      skin: 'layui-layer-photos' + skin('photos'),\r\n      content: '<div class=\"layui-layer-phimg\">'\r\n        +'<img src=\"'+ data[start].src +'\" alt=\"'+ (data[start].alt||'') +'\" layer-pid=\"'+ data[start].pid +'\">'\r\n        +'<div class=\"layui-layer-imgsee\">'\r\n          +(data.length > 1 ? '<span class=\"layui-layer-imguide\"><a href=\"javascript:;\" class=\"layui-layer-iconext layui-layer-imgprev\"></a><a href=\"javascript:;\" class=\"layui-layer-iconext layui-layer-imgnext\"></a></span>' : '')\r\n          +'<div class=\"layui-layer-imgbar\" style=\"display:'+ (key ? 'block' : '') +'\"><span class=\"layui-layer-imgtit\"><a href=\"javascript:;\">'+ (data[start].alt||'') +'</a><em>'+ dict.imgIndex +'/'+ data.length +'</em></span></div>'\r\n        +'</div>'\r\n      +'</div>',\r\n      success: function(layero, index){\r\n        dict.bigimg = layero.find('.layui-layer-phimg');\r\n        dict.imgsee = layero.find('.layui-layer-imguide,.layui-layer-imgbar');\r\n        dict.event(layero);\r\n        options.tab && options.tab(data[start], layero);\r\n        typeof success === 'function' && success(layero);\r\n      }, end: function(){\r\n        dict.end = true;\r\n        $(document).off('keyup', dict.keyup);\r\n      }\r\n    }, options));\r\n  }, function(){\r\n    layer.close(dict.loadi);\r\n    layer.msg('&#x5F53;&#x524D;&#x56FE;&#x7247;&#x5730;&#x5740;&#x5F02;&#x5E38;<br>&#x662F;&#x5426;&#x7EE7;&#x7EED;&#x67E5;&#x770B;&#x4E0B;&#x4E00;&#x5F20;&#xFF1F;', {\r\n      time: 30000, \r\n      btn: ['&#x4E0B;&#x4E00;&#x5F20;', '&#x4E0D;&#x770B;&#x4E86;'], \r\n      yes: function(){\r\n        data.length > 1 && dict.imgnext(true,true);\r\n      }\r\n    });\r\n  });\r\n};\r\n\r\n//主入口\r\nready.run = function(_$){\r\n  $ = _$;\r\n  win = $(window);\r\n  doms.html = $('html');\r\n  layer.open = function(deliver){\r\n    var o = new Class(deliver);\r\n    return o.index;\r\n  };\r\n};\r\n\r\n//加载方式\r\nwindow.layui && layui.define ? (\r\n  layer.ready()\r\n  ,layui.define('jquery', function(exports){ //layui加载\r\n    layer.path = layui.cache.dir;\r\n    ready.run(layui.$);\r\n\r\n    //暴露模块\r\n    window.layer = layer;\r\n    exports('layer', layer);\r\n\r\n    module.exports = layer;\r\n  })\r\n) : (\r\n  (typeof define === 'function' && define.amd) ? define(['jquery'], function(){ //requirejs加载\r\n    ready.run(window.jQuery);\r\n    return layer;\r\n  }) : function(){ //普通script标签加载\r\n    ready.run(window.jQuery);\r\n    layer.ready();\r\n  }()\r\n);\r\n}(window);\r\n"]}