├── .gitignore ├── config ├── prod.env.js ├── dev.env.js └── index.js ├── favicon .ico ├── src ├── config │ ├── index.prod.js │ └── index.dev.js ├── assets │ ├── images │ │ └── logo.png │ └── css │ │ ├── app.css │ │ └── markdown.css ├── components │ ├── YmButton.vue │ ├── index.js │ ├── YmSwitch.vue │ ├── YmCheckbox.vue │ ├── YmInputTxt.vue │ ├── YmLoading.vue │ ├── YmTable.vue │ ├── YmLayer.vue │ ├── YmPager.vue │ ├── YmTab.vue │ ├── YmDate.vue │ ├── YmSelect.vue │ ├── YmEditor.vue │ ├── YmRadio.vue │ ├── YmUpload.vue │ └── YmHeader.vue ├── utils │ ├── cacheHelper.js │ ├── common.js │ └── rmbHelper.js ├── main.js ├── directives │ └── index.js ├── filters │ └── index.js ├── router │ └── index.js ├── pages │ ├── tobase64.vue │ ├── mdconvert.vue │ ├── rmbconvert.vue │ ├── qrcode.vue │ ├── home.vue │ ├── strsplit.vue │ ├── encode.vue │ ├── fanyi.vue │ └── encrypt.vue └── App.vue ├── static ├── favicon .ico ├── layui │ ├── font │ │ ├── iconfont.eot │ │ ├── iconfont.ttf │ │ └── iconfont.woff │ ├── images │ │ └── face │ │ │ ├── 0.gif │ │ │ ├── 1.gif │ │ │ ├── 10.gif │ │ │ ├── 11.gif │ │ │ ├── 12.gif │ │ │ ├── 13.gif │ │ │ ├── 14.gif │ │ │ ├── 15.gif │ │ │ ├── 16.gif │ │ │ ├── 17.gif │ │ │ ├── 18.gif │ │ │ ├── 19.gif │ │ │ ├── 2.gif │ │ │ ├── 20.gif │ │ │ ├── 21.gif │ │ │ ├── 22.gif │ │ │ ├── 23.gif │ │ │ ├── 24.gif │ │ │ ├── 25.gif │ │ │ ├── 26.gif │ │ │ ├── 27.gif │ │ │ ├── 28.gif │ │ │ ├── 29.gif │ │ │ ├── 3.gif │ │ │ ├── 30.gif │ │ │ ├── 31.gif │ │ │ ├── 32.gif │ │ │ ├── 33.gif │ │ │ ├── 34.gif │ │ │ ├── 35.gif │ │ │ ├── 36.gif │ │ │ ├── 37.gif │ │ │ ├── 38.gif │ │ │ ├── 39.gif │ │ │ ├── 4.gif │ │ │ ├── 40.gif │ │ │ ├── 41.gif │ │ │ ├── 42.gif │ │ │ ├── 43.gif │ │ │ ├── 44.gif │ │ │ ├── 45.gif │ │ │ ├── 46.gif │ │ │ ├── 47.gif │ │ │ ├── 48.gif │ │ │ ├── 49.gif │ │ │ ├── 5.gif │ │ │ ├── 50.gif │ │ │ ├── 51.gif │ │ │ ├── 52.gif │ │ │ ├── 53.gif │ │ │ ├── 54.gif │ │ │ ├── 55.gif │ │ │ ├── 56.gif │ │ │ ├── 57.gif │ │ │ ├── 58.gif │ │ │ ├── 59.gif │ │ │ ├── 6.gif │ │ │ ├── 60.gif │ │ │ ├── 61.gif │ │ │ ├── 62.gif │ │ │ ├── 63.gif │ │ │ ├── 64.gif │ │ │ ├── 65.gif │ │ │ ├── 66.gif │ │ │ ├── 67.gif │ │ │ ├── 68.gif │ │ │ ├── 69.gif │ │ │ ├── 7.gif │ │ │ ├── 70.gif │ │ │ ├── 71.gif │ │ │ ├── 8.gif │ │ │ └── 9.gif │ ├── css │ │ ├── modules │ │ │ ├── laydate │ │ │ │ ├── icon.png │ │ │ │ └── laydate.css │ │ │ ├── layer │ │ │ │ └── default │ │ │ │ │ ├── icon.png │ │ │ │ │ ├── icon-ext.png │ │ │ │ │ ├── loading-0.gif │ │ │ │ │ ├── loading-1.gif │ │ │ │ │ ├── loading-2.gif │ │ │ │ │ └── layer.css │ │ │ └── code.css │ │ └── layui.mobile.css │ ├── lay │ │ └── modules │ │ │ ├── util.js │ │ │ ├── code.js │ │ │ ├── laytpl.js │ │ │ ├── flow.js │ │ │ ├── upload.js │ │ │ ├── tree.js │ │ │ ├── laypage.js │ │ │ ├── element.js │ │ │ ├── form.js │ │ │ ├── layedit.js │ │ │ └── laydate.js │ └── layui.js ├── data │ ├── editorUpload.json │ └── initData.js └── msg.html ├── .babelrc ├── push.bat ├── .gitattributes ├── index.html ├── .travis.yml ├── README.md ├── package.json ├── 不花一分钱就能拥有自己的工具站点.MD └── 使用travis-ci自动部署github上的项目.md /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules/ 3 | dist/ 4 | npm-debug.log 5 | -------------------------------------------------------------------------------- /config/prod.env.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | NODE_ENV: '"production"' 3 | } 4 | -------------------------------------------------------------------------------- /favicon .ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/favicon .ico -------------------------------------------------------------------------------- /src/config/index.prod.js: -------------------------------------------------------------------------------- 1 | export default { 2 | apiDomain:'http://api.yimo.link' 3 | } -------------------------------------------------------------------------------- /src/config/index.dev.js: -------------------------------------------------------------------------------- 1 | export default { 2 | apiDomain:'http://api.yimo.link'//未使用 3 | } -------------------------------------------------------------------------------- /static/favicon .ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/favicon .ico -------------------------------------------------------------------------------- /src/assets/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/src/assets/images/logo.png -------------------------------------------------------------------------------- /static/layui/font/iconfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/font/iconfont.eot -------------------------------------------------------------------------------- /static/layui/font/iconfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/font/iconfont.ttf -------------------------------------------------------------------------------- /static/layui/font/iconfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/font/iconfont.woff -------------------------------------------------------------------------------- /static/layui/images/face/0.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/0.gif -------------------------------------------------------------------------------- /static/layui/images/face/1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/1.gif -------------------------------------------------------------------------------- /static/layui/images/face/10.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/10.gif -------------------------------------------------------------------------------- /static/layui/images/face/11.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/11.gif -------------------------------------------------------------------------------- /static/layui/images/face/12.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/12.gif -------------------------------------------------------------------------------- /static/layui/images/face/13.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/13.gif -------------------------------------------------------------------------------- /static/layui/images/face/14.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/14.gif -------------------------------------------------------------------------------- /static/layui/images/face/15.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/15.gif -------------------------------------------------------------------------------- /static/layui/images/face/16.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/16.gif -------------------------------------------------------------------------------- /static/layui/images/face/17.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/17.gif -------------------------------------------------------------------------------- /static/layui/images/face/18.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/18.gif -------------------------------------------------------------------------------- /static/layui/images/face/19.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/19.gif -------------------------------------------------------------------------------- /static/layui/images/face/2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/2.gif -------------------------------------------------------------------------------- /static/layui/images/face/20.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/20.gif -------------------------------------------------------------------------------- /static/layui/images/face/21.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/21.gif -------------------------------------------------------------------------------- /static/layui/images/face/22.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/22.gif -------------------------------------------------------------------------------- /static/layui/images/face/23.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/23.gif -------------------------------------------------------------------------------- /static/layui/images/face/24.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/24.gif -------------------------------------------------------------------------------- /static/layui/images/face/25.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/25.gif -------------------------------------------------------------------------------- /static/layui/images/face/26.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/26.gif -------------------------------------------------------------------------------- /static/layui/images/face/27.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/27.gif -------------------------------------------------------------------------------- /static/layui/images/face/28.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/28.gif -------------------------------------------------------------------------------- /static/layui/images/face/29.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/29.gif -------------------------------------------------------------------------------- /static/layui/images/face/3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/3.gif -------------------------------------------------------------------------------- /static/layui/images/face/30.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/30.gif -------------------------------------------------------------------------------- /static/layui/images/face/31.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/31.gif -------------------------------------------------------------------------------- /static/layui/images/face/32.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/32.gif -------------------------------------------------------------------------------- /static/layui/images/face/33.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/33.gif -------------------------------------------------------------------------------- /static/layui/images/face/34.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/34.gif -------------------------------------------------------------------------------- /static/layui/images/face/35.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/35.gif -------------------------------------------------------------------------------- /static/layui/images/face/36.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/36.gif -------------------------------------------------------------------------------- /static/layui/images/face/37.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/37.gif -------------------------------------------------------------------------------- /static/layui/images/face/38.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/38.gif -------------------------------------------------------------------------------- /static/layui/images/face/39.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/39.gif -------------------------------------------------------------------------------- /static/layui/images/face/4.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/4.gif -------------------------------------------------------------------------------- /static/layui/images/face/40.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/40.gif -------------------------------------------------------------------------------- /static/layui/images/face/41.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/41.gif -------------------------------------------------------------------------------- /static/layui/images/face/42.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/42.gif -------------------------------------------------------------------------------- /static/layui/images/face/43.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/43.gif -------------------------------------------------------------------------------- /static/layui/images/face/44.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/44.gif -------------------------------------------------------------------------------- /static/layui/images/face/45.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/45.gif -------------------------------------------------------------------------------- /static/layui/images/face/46.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/46.gif -------------------------------------------------------------------------------- /static/layui/images/face/47.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/47.gif -------------------------------------------------------------------------------- /static/layui/images/face/48.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/48.gif -------------------------------------------------------------------------------- /static/layui/images/face/49.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/49.gif -------------------------------------------------------------------------------- /static/layui/images/face/5.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/5.gif -------------------------------------------------------------------------------- /static/layui/images/face/50.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/50.gif -------------------------------------------------------------------------------- /static/layui/images/face/51.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/51.gif -------------------------------------------------------------------------------- /static/layui/images/face/52.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/52.gif -------------------------------------------------------------------------------- /static/layui/images/face/53.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/53.gif -------------------------------------------------------------------------------- /static/layui/images/face/54.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/54.gif -------------------------------------------------------------------------------- /static/layui/images/face/55.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/55.gif -------------------------------------------------------------------------------- /static/layui/images/face/56.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/56.gif -------------------------------------------------------------------------------- /static/layui/images/face/57.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/57.gif -------------------------------------------------------------------------------- /static/layui/images/face/58.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/58.gif -------------------------------------------------------------------------------- /static/layui/images/face/59.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/59.gif -------------------------------------------------------------------------------- /static/layui/images/face/6.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/6.gif -------------------------------------------------------------------------------- /static/layui/images/face/60.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/60.gif -------------------------------------------------------------------------------- /static/layui/images/face/61.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/61.gif -------------------------------------------------------------------------------- /static/layui/images/face/62.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/62.gif -------------------------------------------------------------------------------- /static/layui/images/face/63.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/63.gif -------------------------------------------------------------------------------- /static/layui/images/face/64.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/64.gif -------------------------------------------------------------------------------- /static/layui/images/face/65.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/65.gif -------------------------------------------------------------------------------- /static/layui/images/face/66.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/66.gif -------------------------------------------------------------------------------- /static/layui/images/face/67.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/67.gif -------------------------------------------------------------------------------- /static/layui/images/face/68.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/68.gif -------------------------------------------------------------------------------- /static/layui/images/face/69.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/69.gif -------------------------------------------------------------------------------- /static/layui/images/face/7.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/7.gif -------------------------------------------------------------------------------- /static/layui/images/face/70.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/70.gif -------------------------------------------------------------------------------- /static/layui/images/face/71.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/71.gif -------------------------------------------------------------------------------- /static/layui/images/face/8.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/8.gif -------------------------------------------------------------------------------- /static/layui/images/face/9.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/images/face/9.gif -------------------------------------------------------------------------------- /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["es2015", "stage-2"], 3 | "plugins": ["transform-runtime"], 4 | "comments": false 5 | } 6 | -------------------------------------------------------------------------------- /static/layui/css/modules/laydate/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/css/modules/laydate/icon.png -------------------------------------------------------------------------------- /static/layui/css/modules/layer/default/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/css/modules/layer/default/icon.png -------------------------------------------------------------------------------- /static/layui/css/modules/layer/default/icon-ext.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/css/modules/layer/default/icon-ext.png -------------------------------------------------------------------------------- /static/layui/css/modules/layer/default/loading-0.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/css/modules/layer/default/loading-0.gif -------------------------------------------------------------------------------- /static/layui/css/modules/layer/default/loading-1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/css/modules/layer/default/loading-1.gif -------------------------------------------------------------------------------- /static/layui/css/modules/layer/default/loading-2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yimogit/metools/HEAD/static/layui/css/modules/layer/default/loading-2.gif -------------------------------------------------------------------------------- /config/dev.env.js: -------------------------------------------------------------------------------- 1 | var merge = require('webpack-merge') 2 | var prodEnv = require('./prod.env') 3 | 4 | module.exports = merge(prodEnv, { 5 | NODE_ENV: '"development"' 6 | }) 7 | -------------------------------------------------------------------------------- /push.bat: -------------------------------------------------------------------------------- 1 | call npm run build 2 | call git add * 3 | call git commit -m %1 4 | call git push 5 | 6 | cd dist 7 | call git add * 8 | call git commit -m %1 9 | call git push 10 | cd .. -------------------------------------------------------------------------------- /static/data/editorUpload.json: -------------------------------------------------------------------------------- 1 | { 2 | "code": 0 3 | ,"msg": "生成成功" 4 | ,"data": { 5 | "src": "https://www.baidu.com/img/baidu_jgylogo3.gif" 6 | ,"title": "图片名称" 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | 7 | # Standard to msysgit 8 | *.doc diff=astextplain 9 | *.DOC diff=astextplain 10 | *.docx diff=astextplain 11 | *.DOCX diff=astextplain 12 | *.dot diff=astextplain 13 | *.DOT diff=astextplain 14 | *.pdf diff=astextplain 15 | *.PDF diff=astextplain 16 | *.rtf diff=astextplain 17 | *.RTF diff=astextplain 18 | -------------------------------------------------------------------------------- /src/components/YmButton.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | -------------------------------------------------------------------------------- /src/utils/cacheHelper.js: -------------------------------------------------------------------------------- 1 | export default { 2 | GetCacheByKey(key){ 3 | var data=localStorage.getItem(key); 4 | return eval(data); 5 | }, 6 | SetCacheByKey(key,data){ 7 | if(typeof(data)==="object"){ 8 | localStorage.setItem(key,JSON.stringify(data)) 9 | } 10 | else{ 11 | localStorage.setItem(key,data) 12 | } 13 | }, 14 | RemoveCahceByKey(key){ 15 | localStorage.removeItem(key); 16 | }, 17 | ClearCache(){ 18 | localStorage.clear(); 19 | } 20 | } -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | meTools 6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | -------------------------------------------------------------------------------- /src/components/index.js: -------------------------------------------------------------------------------- 1 | export default { 2 | 'v-button': require('./YmButton'), 3 | 'v-checkbox': require('./YmCheckbox'), 4 | 'v-date': require('./YmDate'), 5 | 'v-editor': require('./YmEditor'), 6 | 'v-header': require('./YmHeader'), 7 | 'v-layer': require('./YmLayer'), 8 | 'v-loading': require('./YmLoading'), 9 | 'v-pager': require('./YmPager'), 10 | 'v-radio': require('./YmRadio'), 11 | 'v-select': require('./YmSelect'), 12 | 'v-switch': require('./YmSwitch'), 13 | 'v-table': require('./YmTable'), 14 | 'v-upload': require('./YmUpload'), 15 | 'v-tab': require('./YmTab'), 16 | 'v-input-txt': require('./YmInputTxt'), 17 | } -------------------------------------------------------------------------------- /src/components/YmSwitch.vue: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /src/main.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue'; 2 | import VueRouter from 'vue-router'; 3 | import App from './App'; 4 | import router from './router'; 5 | import directives from './directives'; 6 | import filters from './filters'; 7 | import components from './components'; 8 | 9 | // 自定义样式 10 | import 'assets/css/app.css' 11 | 12 | //注册指令,过滤器,组件 13 | Object.keys(directives).forEach(e => Vue.directive(e, directives[e])); 14 | Object.keys(filters).forEach(e => Vue.filter(e, filters[e])) 15 | Object.keys(components).forEach(e => Vue.component(e, components[e])); 16 | 17 | initVue(); 18 | 19 | function initVue() { 20 | return new Vue({ 21 | router, 22 | render: h => h(App) 23 | }).$mount('#app'); 24 | } -------------------------------------------------------------------------------- /src/components/YmCheckbox.vue: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - '6.10.3' 4 | 5 | # Travis-CI Caching 6 | cache: 7 | directories: 8 | - node_modules 9 | 10 | 11 | # S: Build Lifecycle 12 | install: 13 | - npm install 14 | #- npm install --registry=https://registry.npm.taobao.org 15 | 16 | before_script: 17 | 18 | script: 19 | - npm run build 20 | 21 | after_script: 22 | - cd ./dist 23 | - git init 24 | - git config user.name "${U_NAME}" 25 | - git config user.email "${U_EMAIL}" 26 | - git add . 27 | - git commit -m "Update tools" 28 | - git push --force --quiet "https://${GH_TOKEN}@${GH_REF}" master:${P_BRANCH} 29 | # E: Build LifeCycle 30 | 31 | branches: 32 | only: 33 | - master 34 | env: 35 | global: 36 | #- GH_REF: github.com/yimogit/metools.git 37 | -------------------------------------------------------------------------------- /src/components/YmInputTxt.vue: -------------------------------------------------------------------------------- 1 | 9 | 27 | -------------------------------------------------------------------------------- /src/directives/index.js: -------------------------------------------------------------------------------- 1 | export default { 2 | 'absolute-bottom': { 3 | inserted: function (el, binding) { 4 | el.style.position = 'fixed'; 5 | el.style.bottom = binding.value; 6 | } 7 | }, 8 | 'keydown-tab':{ 9 | inserted:function(el){ 10 | var onkeydown = function(e){ 11 | if(e.keyCode == 9){ 12 | e.preventDefault(); 13 | var start = this.selectionStart, end = this.selectionEnd; 14 | var text = this.value; 15 | var tab = ' '; 16 | text = text.substr(0, start) + tab + text.substr(start); 17 | this.value = text; 18 | this.selectionStart = start + tab.length; 19 | this.selectionEnd = end + tab.length; 20 | } 21 | } 22 | el.onkeydown = onkeydown; 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /src/filters/index.js: -------------------------------------------------------------------------------- 1 | import router from '../router' 2 | export default { 3 | imgAuto(path){ 4 | if(path){ 5 | return path;//上传路径 6 | } 7 | return 'https://dn-coding-net-production-static.qbox.me/static/7a51352fa766f4176d7c4543339e0e98.png'; 8 | }, 9 | openRoute(route){ 10 | if(typeof(route)==='string' && route.indexOf('http')==0){ 11 | this.openRedirect(route); 12 | return; 13 | } 14 | router.push(route); 15 | }, 16 | openRedirect(url){ 17 | window.open(url); 18 | }, 19 | openLayer(url,title){ 20 | layer.open({ 21 | type:2, 22 | shade:0, 23 | skin:'layui-layer-molv', 24 | anim: 4, 25 | offset:'rb', 26 | area: ['400px', '500px'], 27 | title:title, 28 | content:url} 29 | ); 30 | } 31 | } -------------------------------------------------------------------------------- /src/components/YmLoading.vue: -------------------------------------------------------------------------------- 1 | 7 | -------------------------------------------------------------------------------- /static/layui/css/modules/code.css: -------------------------------------------------------------------------------- 1 | /** layui-v1.0.9_rls MIT License By http://www.layui.com */ 2 | html #layuicss-skincodecss{display:none;position:absolute;width:1989px}.layui-code-h3,.layui-code-view{position:relative;font-size:12px}.layui-code-view{display:block;margin:10px 0;padding:0;border:1px solid #ddd;border-left-width:6px;background-color:#F2F2F2;color:#333;font-family:Courier New}.layui-code-h3{padding:0 10px;height:30px;line-height:30px;border-bottom:1px solid #ddd}.layui-code-h3 a{position:absolute;right:10px;top:0;color:#999}.layui-code-view .layui-code-ol{position:relative;overflow:auto}.layui-code-view .layui-code-ol li{position:relative;margin-left:45px;line-height:20px;padding:0 5px;border-left:1px solid #ddd;list-style-type:decimal-leading-zero;*list-style-type:decimal;background-color:#fff}.layui-code-view pre{margin:0}.layui-code-notepad{border:1px solid #0C0C0C;border-left-color:#3F3F3F;background-color:#0C0C0C;color:#C2BE9E}.layui-code-notepad .layui-code-h3{border-bottom:none}.layui-code-notepad .layui-code-ol li{background-color:#3F3F3F;border-left:none} -------------------------------------------------------------------------------- /static/layui/lay/modules/util.js: -------------------------------------------------------------------------------- 1 | /** layui-v1.0.9_rls MIT License By http://www.layui.com */ 2 | ;layui.define("jquery",function(l){"use strict";var o=layui.jquery,i={fixbar:function(l){l=l||{},l.bgcolor=l.bgcolor?"background-color:"+l.bgcolor:"";var i,a,c="layui-fixbar-top",t=[l.bar1===!0?"":l.bar1,l.bar2===!0?"":l.bar2,""],r=o(['"].join("")),e=r.find("."+c),s=function(){var i=o(document).scrollTop();i>=(l.showHeight||200)?a||(e.show(),a=1):a&&(e.hide(),a=0)};o(".layui-fixbar")[0]||("object"==typeof l.css&&r.css(l.css),o("body").append(r),s(),r.find("li").on("click",function(){var i=o(this),a=i.attr("lay-type");"top"===a&&o("html,body").animate({scrollTop:0},200),l.click&&l.click.call(this,a)}),o(document).on("scroll",function(){i&&clearTimeout(i),i=setTimeout(function(){s()},100)}))}};l("util",i)}); -------------------------------------------------------------------------------- /static/msg.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 留言板-metools 13 | 17 | 18 | 19 |
20 | 21 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /src/components/YmTable.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | -------------------------------------------------------------------------------- /src/components/YmLayer.vue: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /static/layui/lay/modules/code.js: -------------------------------------------------------------------------------- 1 | /** layui-v1.0.9_rls MIT License By http://www.layui.com */ 2 | ;layui.define("jquery",function(e){"use strict";var a=layui.jquery,l="http://www.layui.com/doc/modules/code.html";e("code",function(e){var t=[];e=e||{},e.elem=a(e.elem||".layui-code"),e.about=!("about"in e)||e.about,e.elem.each(function(){t.push(this)}),layui.each(t.reverse(),function(t,i){var c=a(i),o=c.html();(c.attr("lay-encode")||e.encode)&&(o=o.replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")),c.html('
  1. '+o.replace(/[\r\t\n]+/g,"
  2. ")+"
"),c.find(">.layui-code-h3")[0]||c.prepend('

'+(c.attr("lay-title")||e.title||"code")+(e.about?'layui.code':"")+"

");var d=c.find(">.layui-code-ol");c.addClass("layui-box layui-code-view"),(c.attr("lay-skin")||e.skin)&&c.addClass("layui-code-"+(c.attr("lay-skin")||e.skin)),(d.find("li").length/100|0)>0&&d.css("margin-left",(d.find("li").length/100|0)+"px"),(c.attr("lay-height")||e.height)&&d.css("max-height",c.attr("lay-height")||e.height)})})}).addcss("modules/code.css","skincodecss"); -------------------------------------------------------------------------------- /src/components/YmPager.vue: -------------------------------------------------------------------------------- 1 | 4 | 33 | -------------------------------------------------------------------------------- /src/components/YmTab.vue: -------------------------------------------------------------------------------- 1 | 13 | -------------------------------------------------------------------------------- /config/index.js: -------------------------------------------------------------------------------- 1 | // see http://vuejs-templates.github.io/webpack for documentation. 2 | var path = require('path') 3 | 4 | module.exports = { 5 | build: { 6 | env: require('./prod.env'), 7 | index: path.resolve(__dirname, '../dist/index.html'), 8 | assetsRoot: path.resolve(__dirname, '../dist'), 9 | assetsSubDirectory: 'static', 10 | assetsPublicPath: './', 11 | productionSourceMap: true, 12 | // Gzip off by default as many popular static hosts such as 13 | // Surge or Netlify already gzip all static assets for you. 14 | // Before setting to `true`, make sure to: 15 | // npm install --save-dev compression-webpack-plugin 16 | productionGzip: false, 17 | productionGzipExtensions: ['js', 'css'] 18 | }, 19 | dev: { 20 | env: require('./dev.env'), 21 | port: 7878, 22 | assetsSubDirectory: 'static', 23 | assetsPublicPath: '/', 24 | proxyTable: {}, 25 | // CSS Sourcemaps off by default because relative paths are "buggy" 26 | // with this option, according to the CSS-Loader README 27 | // (https://github.com/webpack/css-loader#sourcemaps) 28 | // In our experience, they generally work as expected, 29 | // just be aware of this issue when enabling this option. 30 | cssSourceMap: false 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /src/components/YmDate.vue: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # 个人工具站点 2 | 3 | **这个工具个人及朋友实际使用的时候主要还是 Chrome 插件居多,欢迎使用(https://github.com/yimogit/metools-plugin)** 4 | 5 | 本项目是一个使用 vue2.0+layui 制作的工具站点 6 | 你可以 fork 到自己的网站,然后配置域名,构建自己的工具站点。 7 | 8 | 9 | 访问地址:[http://tools.yimo.link](http://tools.yimo.link)   10 | 纯净版:[https://metools.js.org](https://metools.js.org) 11 | chrome插件版:https://github.com/yimogit/metools-plugin 12 | 13 | 实现列表 14 | ----------------------- 15 | 1. 加密/解密类 ['AES','DES','RC4','Rabbit','TripleDES','Base64','MD5','SHA1','SHA224','SHA256','SHA384','SHA512','HmacSHA1','HmacSHA224','HmacSHA256','HmacSHA384','HmacSHA512','HmacMD5'] 16 | 2. 编码/解码 ['utf-8', 'ascii', 'unicode', 'url', 'base64'] 17 | 3. 图片转base64 18 | 4. 字符串替换 19 | 5. MarkDown转HTML 20 | 6. 生成二维码 21 | 7. 在线翻译(百度,有道) 22 | 23 | 技术栈 24 | -------------------- 25 | vue V2.0.1 26 | vue-router V2.0.1 27 | layui V1.0.9 28 | crypto-js V3.1.9-1 29 | 30 | 本地运行需要环境: 31 | "node": ">= 4.0.0", 32 | "npm": ">= 3.0.0" 33 | 34 | 1. 还原包 35 | -------------------- 36 | `npm install` 37 | 38 | 2. 运行 39 | -------------------- 40 | `npm run dev` 41 | 42 | 打包 43 | -------------------- 44 | `npm run build` 45 | 46 | push脚本提交修改 47 | -------------------- 48 | `push 修改了一点东西~~` 49 | 注:在dist目录重新拉取了pages分支 50 | -------------------------------------------------------------------------------- /src/router/index.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue'; 2 | import VueRouter from 'vue-router'; 3 | 4 | Vue.use(VueRouter); 5 | const router = new VueRouter({ 6 | mode: 'hash',//history 打包需要使用hash 7 | routes: [ 8 | { name: '/', path: '/', redirect: '/home' }, 9 | { name: 'home', path: '/home', component: require('../pages/home'), meta: { } }, 10 | { name: 'encrypt', path: '/encrypt', component: require('../pages/encrypt'), meta: { } }, 11 | { name: 'encode', path: '/encode', component: require('../pages/encode'), meta: { } }, 12 | { name: 'tobase64', path: '/tobase64', component: require('../pages/tobase64'), meta: { } }, 13 | { name: 'strsplit', path: '/strsplit', component: require('../pages/strsplit'), meta: { } }, 14 | { name: 'rmbconvert', path: '/rmbconvert', component: require('../pages/rmbconvert'), meta: { } }, 15 | { name: 'mdconvert', path: '/mdconvert', component: require('../pages/mdconvert'), meta: { } }, 16 | { name: 'qrcode', path: '/qrcode', component: require('../pages/qrcode'),meta:{} }, 17 | { name: 'fanyi', path: '/fanyi', component: require('../pages/fanyi'),meta:{} }, 18 | { name: '404', path: '*', redirect: '/home' } 19 | ] 20 | }) 21 | 22 | router.beforeEach((to, from, next) => { 23 | console.log(`路由开始:${from.path}`) 24 | // console.log(from) 25 | next(); 26 | }); 27 | 28 | router.afterEach(route => { 29 | // console.log(route); 30 | console.log(`路由结束:${route.path}`) 31 | }) 32 | export default router -------------------------------------------------------------------------------- /src/utils/common.js: -------------------------------------------------------------------------------- 1 | import config from 'config' 2 | import cacheHelper from './cacheHelper' 3 | export default { 4 | SendGetRequest(url,successCallback) { 5 | var obj=new XMLHttpRequest(); // XMLHttpRequest对象用于在后台与服务器交换数据 6 | obj.open('GET',url,true); 7 | obj.onreadystatechange=function(){ 8 | if (obj.readyState == 4 && obj.status == 200 || obj.status == 304) { // readyState==4说明请求已完成 9 | successCallback.call(this, obj.responseText); //从服务器获得数据 10 | } 11 | }; 12 | obj.send(null); 13 | }, 14 | SendPostRequest (url, data, successCallback) { 15 | var obj = new XMLHttpRequest(); 16 | obj.open("POST", url, true); 17 | obj.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); // 发送信息至服务器时内容编码类型 18 | obj.onreadystatechange = function () { 19 | if (obj.readyState == 4 && (obj.status == 200 || obj.status == 304)) { // 304未修改 20 | successCallback.call(this, obj.responseText); 21 | } 22 | }; 23 | obj.send(data); 24 | }, 25 | execJsonp(src){ 26 | var script = document.createElement("script"); 27 | script.setAttribute("type", "text/javascript"); 28 | script.src = src; 29 | document.body.appendChild(script); 30 | }, 31 | trim(str){ 32 | if(str) 33 | return str.replace(/\ +/g, '').replace(/[ ]/g, ''); 34 | return ''; 35 | }, 36 | getProtocol(){ 37 | return location.protocol=='https:'?'https':'http'; 38 | } 39 | } -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "metools", 3 | "version": "1.0.0", 4 | "description": "meTools", 5 | "author": "yimo", 6 | "private": true, 7 | "scripts": { 8 | "dev": "node build/dev-server.js", 9 | "build": "node build/build.js" 10 | }, 11 | "dependencies": { 12 | "crypto-js": "^3.1.9-1", 13 | "jr-qrcode": "^1.0.5", 14 | "marked": "^0.3.6", 15 | "vue": "^2.0.1", 16 | "vue-router": "^2.0.1" 17 | }, 18 | "devDependencies": { 19 | "autoprefixer": "^6.4.0", 20 | "babel-core": "^6.0.0", 21 | "babel-loader": "^6.0.0", 22 | "babel-plugin-transform-runtime": "^6.0.0", 23 | "babel-preset-es2015": "^6.0.0", 24 | "babel-preset-stage-2": "^6.0.0", 25 | "babel-register": "^6.0.0", 26 | "chalk": "^1.1.3", 27 | "connect-history-api-fallback": "^1.1.0", 28 | "css-loader": "^0.25.0", 29 | "eventsource-polyfill": "^0.9.6", 30 | "express": "^4.13.3", 31 | "extract-text-webpack-plugin": "^1.0.1", 32 | "file-loader": "^0.9.0", 33 | "function-bind": "^1.0.2", 34 | "html-webpack-plugin": "^2.8.1", 35 | "http-proxy-middleware": "^0.17.2", 36 | "json-loader": "^0.5.4", 37 | "opn": "^4.0.2", 38 | "ora": "^0.3.0", 39 | "semver": "^5.3.0", 40 | "shelljs": "^0.7.4", 41 | "url-loader": "^0.5.7", 42 | "vue-loader": "^9.4.0", 43 | "vue-style-loader": "^1.0.0", 44 | "webpack": "^1.13.2", 45 | "webpack-dev-middleware": "^1.8.3", 46 | "webpack-hot-middleware": "^2.12.2", 47 | "webpack-merge": "^0.14.1" 48 | }, 49 | "engines": { 50 | "node": ">= 4.0.0", 51 | "npm": ">= 3.0.0" 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /static/layui/lay/modules/laytpl.js: -------------------------------------------------------------------------------- 1 | /** layui-v1.0.9_rls MIT License By http://www.layui.com */ 2 | ;layui.define(function(e){"use strict";var r={open:"{{",close:"}}"},n={exp:function(e){return new RegExp(e,"g")},query:function(e,n,t){var o=["#([\\s\\S])+?","([^{#}])*?"][e||0];return c((n||"")+r.open+o+r.close+(t||""))},escape:function(e){return String(e||"").replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")},error:function(e,r){var n="Laytpl Error:";return"object"==typeof console&&console.error(n+e+"\n"+(r||"")),n+e}},c=n.exp,t=function(e){this.tpl=e};t.pt=t.prototype,window.errors=0,t.pt.parse=function(e,t){var o=this,p=e,a=c("^"+r.open+"#",""),l=c(r.close+"$","");e=e.replace(/\s+|\r|\t|\n/g," ").replace(c(r.open+"#"),r.open+"# ").replace(c(r.close+"}"),"} "+r.close).replace(/\\/g,"\\\\").replace(/(?="|')/g,"\\").replace(n.query(),function(e){return e=e.replace(a,"").replace(l,""),'";'+e.replace(/\\/g,"")+';view+="'}).replace(n.query(1),function(e){var n='"+(';return e.replace(/\s/g,"")===r.open+r.close?"":(e=e.replace(c(r.open+"|"+r.close),""),/^=/.test(e)&&(e=e.replace(/^=/,""),n='"+_escape_('),n+e.replace(/\\/g,"")+')+"')}),e='"use strict";var view = "'+e+'";return view;';try{return o.cache=e=new Function("d, _escape_",e),e(t,n.escape)}catch(u){return delete o.cache,n.error(u,p)}},t.pt.render=function(e,r){var c,t=this;return e?(c=t.cache?t.cache(e,n.escape):t.parse(t.tpl,e),r?void r(c):c):n.error("no data")};var o=function(e){return"string"!=typeof e?n.error("Template not found"):new t(e)};o.config=function(e){e=e||{};for(var n in e)r[n]=e[n]},o.v="1.2.0",e("laytpl",o)}); -------------------------------------------------------------------------------- /src/components/YmSelect.vue: -------------------------------------------------------------------------------- 1 | 12 | -------------------------------------------------------------------------------- /src/pages/tobase64.vue: -------------------------------------------------------------------------------- 1 | 29 | -------------------------------------------------------------------------------- /static/layui/lay/modules/flow.js: -------------------------------------------------------------------------------- 1 | /** layui-v1.0.9_rls MIT License By http://www.layui.com */ 2 | ;layui.define("jquery",function(e){"use strict";var l=layui.jquery,o=function(e){},t='';o.prototype.load=function(e){var o,i,n,r,a=this,c=0;e=e||{};var u=l(e.elem);if(u[0]){var f=l(e.scrollElem||document),m=e.mb||50,s=!("isAuto"in e)||e.isAuto,y=e.end||"没有更多了",v=e.scrollElem&&e.scrollElem!==document,d="加载更多",h=l('
'+d+"
");u.find(".layui-flow-more")[0]||u.append(h);var p=function(e,t){e=l(e),h.before(e),t=0==t||null,t?h.html(y):h.find("a").html(d),i=t,o=null,n&&n()},g=function(){o=!0,h.find("a").html(t),"function"==typeof e.done&&e.done(++c,p)};if(g(),h.find("a").on("click",function(){l(this);i||o||g()}),e.isLazyimg)var n=a.lazyimg({elem:e.elem+" img",scrollElem:e.scrollElem});return s?(f.on("scroll",function(){var e=l(this),t=e.scrollTop();r&&clearTimeout(r),i||(r=setTimeout(function(){var i=v?e.height():l(window).height(),n=v?e.prop("scrollHeight"):document.documentElement.scrollHeight;n-t-i<=m&&(o||g())},100))}),a):a}},o.prototype.lazyimg=function(e){var o,t=this,i=0;e=e||{};var n=l(e.scrollElem||document),r=e.elem||"img",a=e.scrollElem&&e.scrollElem!==document,c=function(e,l){var o=n.scrollTop(),r=o+l,c=a?function(){return e.offset().top-n.offset().top+o}():e.offset().top;if(c>=o&&c<=r&&!e.attr("src")){var f=e.attr("lay-src");layui.img(f,function(){var l=t.lazyimg.elem.eq(i);e.attr("src",f).removeAttr("lay-src"),l[0]&&u(l),i++})}},u=function(e,o){var u=a?(o||n).height():l(window).height(),f=n.scrollTop(),m=f+u;if(t.lazyimg.elem=l(r),e)c(e,u);else for(var s=0;sm)break}};if(u(),!o){var f;n.on("scroll",function(){var e=l(this);f&&clearTimeout(f),f=setTimeout(function(){u(null,e)},50)}),o=!0}return u},e("flow",new o)}); -------------------------------------------------------------------------------- /不花一分钱就能拥有自己的工具站点.MD: -------------------------------------------------------------------------------- 1 | > 需要【加密/解密】【编码/解码】【生成二维码】的时候不用再进百度点广告~ 2 | > 也不需要去收藏夹找网址~ 3 | > 我的目的大概就是如此。 4 | 5 | ## 论个人工具站点的必要性 6 | 7 | 1. 问:想要【加密/解密/编码/解码】怎么办? 8 | 答:搜索 加密... 收藏夹找网址 9 | 10 | 2. 问:想要临时生成一个二维码怎么办? 11 | 答:搜索 在线生成二维码... 收藏夹找网址 12 | 13 | > what? 收藏了一堆东西找不到~ 14 | > what? 一不小心就点到了广告~ 15 | > what? 网站竟然挂了~ 16 | 17 | 我想要一个自己的工具站~一个不会说挂就挂的网站~ 18 | 然后~~ 19 | 卧槽。一不小心就折腾了出来,此处应有链接 [http://tools.yimo.link/](http://tools.yimo.link/) 20 | 21 | 项目为纯静态站点托管在coding.net&github.com,使用pages服务托管并绑定的是自己的域名,下面介绍下 `不花一分钱就能拥有自己的工具站点` 的方法 22 | 23 | ## 如何不花一分钱就能拥有自己的工具站点? 24 | 25 | 当然是用开源平台的pages服务了~ 26 | 27 | ### 一、在github部署 28 | 0. 首先你得有一个github.com账号 29 | 1. 其次你得去[github.com项目地址](https://github.com/yimogit/metools) fork下项目 30 | ![图片](https://dn-coding-net-production-pp.qbox.me/242cfe70-2da8-445c-9578-b6d3b42e233c.png)     31 | 2. 再然后访问你的工具站吧 https://你的用户名.github.io/metools/               32 | 3. github自定义域名等相关操作自行参考[此篇文章](http://blog.csdn.net/yanzhenjie1003/article/details/51703370) 33 | 34 | ### 二、在coding部署 35 | 0. 首先你得有一个coding.net账号 36 | 1. 其次你得去[coding.net项目地址](https://coding.net/u/yimocoding/p/metools) fork下项目 37 | 2. 再然后访问你的工具站吧 https://你的用户名.coding.me/metools/ 38 | 39 | ### 补充说明 40 | 41 | 可以通过修改`/static/data/initData.js`来个性化定制自己的工具站~ 42 | 可以配置网站的Logo,名称,底部链接,以及菜单~ 43 | 添加了百度统计代码和畅言的留言,不需要的自行移除~ 44 | 45 | ## 项目说明 46 | > vue-cli生成的vue2.0项目,页面套的layui的模板,简单封装了一下layui的组件 47 | > 加密编码使用的是`crypto-js`库实现 48 | > MarkDown转HTML使用`marked` 49 | > 二维码生成使用`jr-qrcode` 50 | 51 | ## 已实现功能 52 | 0. 导航块生成(有点花哨~) 53 | 1. 加密/解密 ['AES','DES','RC4','Rabbit','TripleDES','Base64','MD5','SHA1','SHA224','SHA256','SHA384','SHA512','HmacSHA1','HmacSHA224','HmacSHA256','HmacSHA384','HmacSHA512','HmacMD5'] 54 | 2. 编码/解码 ['utf-8', 'ascii', 'unicode', 'url', 'base64'] 55 | 3. 图片转base64 56 | 4. 字符串替换 57 | 5. MarkDown转HTML 58 | 6. 生成二维码 59 | 7. 在线翻译(百度,有道) 60 | 61 | 62 | ## 未来的计划 63 | 有需求就干,没有需求就折腾其他的 64 | 比如一个不花一分钱就讷讷个拥有自己的网站收藏夹~ 65 | -------------------------------------------------------------------------------- /src/assets/css/app.css: -------------------------------------------------------------------------------- 1 | a{cursor: pointer;} 2 | 3 | .layui-layout-admin .layui-header { 4 | border-bottom: 5px solid rgb(26, 160, 148); 5 | } 6 | .layui-layout-admin .layui-current{ 7 | border-left: 5px solid rgb(26, 160, 148); 8 | } 9 | .ymheader{ 10 | background: #393D49 11 | } 12 | .ymheader .user-action { 13 | position: absolute; 14 | right: 15px; 15 | top: 25px; 16 | } 17 | .ymheader .user-action a{ 18 | color:#fff; 19 | font-size: 16px; 20 | } 21 | .ymheader .logo { 22 | height: 60px; 23 | } 24 | .ymheader .searchTxt{ 25 | position: absolute; 26 | width: 200px; 27 | left: 120px; 28 | top: 16px; 29 | 30 | } 31 | .ymheader .searchTxt input{ 32 | height: 30px; 33 | line-height: 30px; 34 | padding-left: 12px; 35 | background-color: #424652; 36 | background-color: rgba(255,255,255,.05); 37 | border: none 0; 38 | color: #fff; 39 | font-size: 12px; 40 | } 41 | .welcome { 42 | width: 200px; 43 | height: 200px; 44 | margin: 5px; 45 | float: left; 46 | text-align: center; 47 | position: relative; 48 | } 49 | 50 | .welcome a { 51 | position: relative; 52 | top: 50%; 53 | height: 20px; 54 | color: white; 55 | margin-top: -10px; 56 | display: block; 57 | font-size: 18px; 58 | /*text-shadow: 1px 1px*/ 59 | } 60 | #contentFooter{ 61 | z-index:999;height:35px; 62 | } 63 | #contentFooter p{ 64 | text-indent: 10px; 65 | line-height: 35px; 66 | font-size: 15px; 67 | } 68 | #contentFooter p a{ 69 | margin: 10px; 70 | } 71 | 72 | @media screen and (max-width: 720px) { 73 | #leftMenu { 74 | display: none; 75 | } 76 | #rightContent,#contentFooter{ 77 | left:0; 78 | } 79 | } 80 | 81 | .site-tips{margin-bottom: 10px; padding: 15px; line-height: 22px; border-left: 5px solid #1aa094; background-color: #f2f2f2;} 82 | -------------------------------------------------------------------------------- /src/components/YmEditor.vue: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /static/layui/lay/modules/upload.js: -------------------------------------------------------------------------------- 1 | /** layui-v1.0.9_rls MIT License By http://www.layui.com */ 2 | ;layui.define("layer",function(e){"use strict";var a=layui.jquery,t=layui.layer,i=(layui.device(),"layui-upload-enter"),n="layui-upload-iframe",r={icon:2,shift:6},o={file:"文件",video:"视频",audio:"音频"},s=function(e){this.options=e};s.prototype.init=function(){var e=this,t=e.options,r=a("body"),s=a(t.elem||".layui-upload-file"),u=a('');return a("#"+n)[0]||r.append(u),s.each(function(r,s){s=a(s);var u='
',l=s.attr("lay-type")||t.type;t.unwrap||(u='
'+u+''+(s.attr("lay-title")||t.title||"上传"+(o[l]||"图片"))+"
"),u=a(u),t.unwrap||u.on("dragover",function(e){e.preventDefault(),a(this).addClass(i)}).on("dragleave",function(){a(this).removeClass(i)}).on("drop",function(){a(this).removeClass(i)}),s.parent("form").attr("target")===n&&(t.unwrap?s.unwrap():(s.parent().next().remove(),s.unwrap().unwrap())),s.wrap(u),s.off("change").on("change",function(){e.action(this,l)})})},s.prototype.action=function(e,i){var o=this,s=o.options,u=e.value,l=a(e),p=l.attr("lay-ext")||s.ext||"";if(u){switch(i){case"file":if(p&&!RegExp("\\w\\.("+p+")$","i").test(escape(u)))return t.msg("不支持该文件格式",r),e.value="";break;case"video":if(!RegExp("\\w\\.("+(p||"avi|mp4|wma|rmvb|rm|flash|3gp|flv")+")$","i").test(escape(u)))return t.msg("不支持该视频格式",r),e.value="";break;case"audio":if(!RegExp("\\w\\.("+(p||"mp3|wav|mid")+")$","i").test(escape(u)))return t.msg("不支持该音频格式",r),e.value="";break;default:if(!RegExp("\\w\\.("+(p||"jpg|png|gif|bmp|jpeg")+")$","i").test(escape(u)))return t.msg("不支持该图片格式",r),e.value=""}s.before&&s.before(e),l.parent().submit();var c=a("#"+n),f=setInterval(function(){var a;try{a=c.contents().find("body").text()}catch(i){t.msg("上传接口存在跨域",r),clearInterval(f)}if(a){clearInterval(f),c.contents().find("body").html("");try{a=JSON.parse(a)}catch(i){return a={},t.msg("请对上传接口返回JSON字符",r)}"function"==typeof s.success&&s.success(a,e)}},30);e.value=""}},e("upload",function(e){var a=new s(e=e||{});a.init()})}); -------------------------------------------------------------------------------- /src/components/YmRadio.vue: -------------------------------------------------------------------------------- 1 | 19 | -------------------------------------------------------------------------------- /src/pages/mdconvert.vue: -------------------------------------------------------------------------------- 1 | 17 | -------------------------------------------------------------------------------- /src/pages/rmbconvert.vue: -------------------------------------------------------------------------------- 1 | 29 | -------------------------------------------------------------------------------- /src/components/YmUpload.vue: -------------------------------------------------------------------------------- 1 | 12 | 46 | -------------------------------------------------------------------------------- /src/pages/qrcode.vue: -------------------------------------------------------------------------------- 1 | 24 | -------------------------------------------------------------------------------- /src/pages/home.vue: -------------------------------------------------------------------------------- 1 | 16 | -------------------------------------------------------------------------------- /static/data/initData.js: -------------------------------------------------------------------------------- 1 | window.siteData={ 2 | MenuItems:getMenuItems(), 3 | SiteInfo:getSiteInfo(), 4 | } 5 | initTongJi() 6 | function getMenuItems(){ 7 | return [ 8 | { 9 | Key: '100', 10 | MenuName: '快速导航', 11 | MenuUrl: '/home' 12 | }, 13 | { 14 | Key: '208', 15 | MenuName: '在线翻译', 16 | MenuUrl: '/fanyi' 17 | }, 18 | { 19 | Key: '207', 20 | MenuName: '二维码生成', 21 | MenuUrl: '/qrcode' 22 | }, 23 | { 24 | Key: '201', 25 | MenuName: '加密/解密', 26 | MenuUrl: '/encrypt' 27 | }, 28 | { 29 | Key: '202', 30 | MenuName: '编码/解码', 31 | MenuUrl: '/encode' 32 | }, 33 | { 34 | Key: '203', 35 | MenuName: '图片转base64', 36 | MenuUrl: '/tobase64' 37 | }, 38 | { 39 | Key: '204', 40 | MenuName: '字符串替换', 41 | MenuUrl: '/strsplit' 42 | }, 43 | { 44 | Key: '205', 45 | MenuName: '人民币转换', 46 | MenuUrl: '/rmbconvert' 47 | }, 48 | { 49 | Key: '206', 50 | MenuName: 'Markdown转换', 51 | MenuUrl: '/mdconvert' 52 | }, 53 | { 54 | Key: '300', 55 | MenuName: '友情链接', 56 | ChildrenMenu:[ 57 | { 58 | Key: '301', 59 | MenuName: '易墨‘s_Blog', 60 | MenuUrl: 'http://www.yimo.link', 61 | }, 62 | { 63 | Key: '303', 64 | MenuName: '都没有?那就戳这里', 65 | MenuUrl: 'http://tool.oschina.net/', 66 | } 67 | ] 68 | } 69 | ]; 70 | } 71 | function getSiteInfo(){ 72 | return { 73 | SiteName:'个人工具站 - By 易墨', 74 | LogoUrl:'',//http://www.yimo.link/static/imgs/logo.png', 75 | ShowMsg:true, 76 | FooterLinks:[ 77 | { 78 | Title: '易墨‘s_Blog', 79 | Url: 'http://www.yimo.link', 80 | }, 81 | { 82 | Title:'分分钟拥有自己的站点吧', 83 | Url:'https://coding.net/u/yimocoding/p/metools/git/blob/master/不花一分钱就能拥有自己的工具站点.MD' 84 | } 85 | ] 86 | } 87 | } 88 | //需替换为自己的统计代码 89 | function initTongJi(){ 90 | if(location.host.indexOf('localhost')==0){ 91 | return; 92 | } 93 | var _hmt = _hmt || []; 94 | (function() { 95 | var hm = document.createElement("script"); 96 | hm.src = "https://hm.baidu.com/hm.js?83ed2a06b8c764cebb78eece2c3452a2"; 97 | var s = document.getElementsByTagName("script")[0]; 98 | s.parentNode.insertBefore(hm, s); 99 | })(); 100 | } -------------------------------------------------------------------------------- /static/layui/lay/modules/tree.js: -------------------------------------------------------------------------------- 1 | /** layui-v1.0.9_rls MIT License By http://www.layui.com */ 2 | ;layui.define("jquery",function(e){"use strict";var o=layui.jquery,a=layui.hint(),r="layui-tree-enter",i=function(e){this.options=e},t={arrow:["",""],checkbox:["",""],radio:["",""],branch:["",""],leaf:""};i.prototype.init=function(e){var o=this;e.addClass("layui-box layui-tree"),o.options.skin&&e.addClass("layui-tree-skin-"+o.options.skin),o.tree(e),o.on(e)},i.prototype.tree=function(e,a){var r=this,i=r.options,n=a||i.nodes;layui.each(n,function(a,n){var l=n.children&&n.children.length>0,c=o(''),s=o(["
  • ",function(){return l?''+(n.spread?t.arrow[1]:t.arrow[0])+"":""}(),function(){return i.check?''+("checkbox"===i.check?t.checkbox[0]:"radio"===i.check?t.radio[0]:"")+"":""}(),function(){return'"+(''+(l?n.spread?t.branch[1]:t.branch[0]:t.leaf)+"")+(""+(n.name||"未命名")+"")}(),"
  • "].join(""));l&&(s.append(c),r.tree(c,n.children)),e.append(s),"function"==typeof i.click&&r.click(s,n),r.spread(s,n),i.drag&&r.drag(s,n)})},i.prototype.click=function(e,o){var a=this,r=a.options;e.children("a").on("click",function(e){layui.stope(e),r.click(o)})},i.prototype.spread=function(e,o){var a=this,r=(a.options,e.children(".layui-tree-spread")),i=e.children("ul"),n=e.children("a"),l=function(){e.data("spread")?(e.data("spread",null),i.removeClass("layui-show"),r.html(t.arrow[0]),n.find(".layui-icon").html(t.branch[0])):(e.data("spread",!0),i.addClass("layui-show"),r.html(t.arrow[1]),n.find(".layui-icon").html(t.branch[1]))};i[0]&&(r.on("click",l),n.on("dblclick",l))},i.prototype.on=function(e){var a=this,i=a.options,t="layui-tree-drag";e.find("i").on("selectstart",function(e){return!1}),i.drag&&o(document).on("mousemove",function(e){var r=a.move;if(r.from){var i=(r.to,o('
    '));e.preventDefault(),o("."+t)[0]||o("body").append(i);var n=o("."+t)[0]?o("."+t):i;n.addClass("layui-show").html(r.from.elem.children("a").html()),n.css({left:e.pageX+10,top:e.pageY+10})}}).on("mouseup",function(){var e=a.move;e.from&&(e.from.elem.children("a").removeClass(r),e.to&&e.to.elem.children("a").removeClass(r),a.move={},o("."+t).remove())})},i.prototype.move={},i.prototype.drag=function(e,a){var i=this,t=(i.options,e.children("a")),n=function(){var t=o(this),n=i.move;n.from&&(n.to={item:a,elem:e},t.addClass(r))};t.on("mousedown",function(){var o=i.move;o.from={item:a,elem:e}}),t.on("mouseenter",n).on("mousemove",n).on("mouseleave",function(){var e=o(this),a=i.move;a.from&&(delete a.to,e.removeClass(r))})},e("tree",function(e){var r=new i(e=e||{}),t=o(e.elem);return t[0]?void r.init(t):a.error("layui.tree 没有找到"+e.elem+"元素")})}); -------------------------------------------------------------------------------- /使用travis-ci自动部署github上的项目.md: -------------------------------------------------------------------------------- 1 | 2 | # travis-ci是什么? 3 | > 一个使用yaml格式配置用于持续集成完成自动化测试部署的开源项目 4 | > 官网:[https://travis-ci.org/](https://travis-ci.org/) 5 | 6 | # 使用travis-ci集成vue.js项目 7 | > 首先,您需要一个github账号 and 一个vue.js项目~ 没有的话试试这个啊[metools](https://github.com/yimogit/metools) 8 | 9 | ## 1. 登录Github并拥有一个项目 10 | > 登录[github](https://github.com/) 然后Star,Fork [metools](https://github.com/yimogit/metools) 11 | > 当然可以先去看看这个项目是啥..[http://tools.yimo.link/](http://tools.yimo.link/) 12 | 13 | ## 2. 前往travis-ci官网 14 | > 使用Github账号登录 15 | ![图片](https://dn-coding-net-production-pp.qbox.me/add807a1-5617-4df6-ba0d-a63568bbffd6.png) 16 | 17 | ## 3. 登录成功回到用户中心 18 | > 默认会同步一部分仓库,如果太多的话需要点击Sync account进行同步 19 | > ![图片](https://dn-coding-net-production-pp.qbox.me/155adb08-745f-4937-ad64-15eae01ef7e3.png) 20 | 21 | ## 4. 开启对 metools 项目的集成并进入设置页面 22 | > ![图片](https://dn-coding-net-production-pp.qbox.me/2e93e40d-35fb-44fe-a62e-0a96e258dcc2.png) 23 | > 如下图所示,根据需要配置构建信息 24 | > 添加github的Token到环境变量中,用户名,邮箱也可添加进去,这样配置文件中就可以使用了 25 | > 生成Token见步骤5.注意:**配置私密的环境变量时一定要加密,因为会显示在日志中且能够被他人看到** 26 | > ![图片](https://dn-coding-net-production-pp.qbox.me/88ec5462-f9ff-499e-876d-38130df95840.png) 27 | > 根据步骤6的配置,还需要添加一些环境变量使起更方便(地址别填错了) 28 | ![图片](https://dn-coding-net-production-pp.qbox.me/eb84e86d-0119-49f4-b7b8-3f9a61995cb3.png) 29 | 30 | ## 5. Github生成访问令牌 (即添加授权) 31 | > 访问令牌的作用就是授权仓库操作权限 https://github.com/settings/tokens 32 | > Github>settings>Personal access tokens> Generate new token > Generate token> Copy Token 33 | > ![图片](https://dn-coding-net-production-pp.qbox.me/05e1958b-cf92-46a5-897d-b5a276905cf6.png) 34 | 35 | 36 | 37 | ## 6. .travis.yml 文件的简单配置 38 | > `.travis.yml`文件的作用就是在代码提交的时候travis-ci会根据该配置文件执行配置的任务 39 | > 在项目根目录中创建(或修改)`.travis.yml` 文件,其中`${环境变量}`为环境变量在travis中配置即可 40 | ``` yml 41 | language: node_js 42 | # nodejs版本 43 | node_js: 44 | - '6' 45 | 46 | # Travis-CI Caching 47 | cache: 48 | directories: 49 | - node_modules 50 | 51 | 52 | # S: Build Lifecycle 53 | install: 54 | - npm install 55 | 56 | before_script: 57 | 58 | # 无其他依赖项所以执行npm run build 构建就行了 59 | script: 60 | - npm run build 61 | 62 | after_script: 63 | - cd ./dist 64 | - git init 65 | - git config user.name "${U_NAME}" 66 | - git config user.email "${U_EMAIL}" 67 | - git add . 68 | - git commit -m "Update tools" 69 | - git push --force --quiet "https://${GH_TOKEN}@${GH_REF}" master:${P_BRANCH} 70 | # E: Build LifeCycle 71 | 72 | branches: 73 | only: 74 | - master 75 | env: 76 | global: 77 | # 我将其添加到了travis-ci的环境变量中 78 | #- GH_REF: github.com/yimogit/metools.git 79 | 80 | ``` 81 | ## 7. 自动构建项目 82 | 修改完成,并推送到github后,就可以在travis-ci.org中看到项目开始构建了(以后每次推送代码到仓库后都将会自动构建项目) 83 | 84 | 构建完成日志 85 | ![图片](https://dn-coding-net-production-pp.qbox.me/57f637e6-6226-4e99-b7d4-582811195582.png) 86 | 87 | 构建完成。在设置中可以看到默认已经将`gh-pages`分支部署到pages,访问https://用户名.github.io/metools/即可预览效果。 88 | ![图片](https://dn-coding-net-production-pp.qbox.me/5c3f81fd-8044-4a45-962b-78d5ec212daa.png) 89 | 90 | 若构建失败,可以通过travis-ci中项目面板右上角的 `Restart build` 重新构建 91 | ![图片](https://dn-coding-net-production-pp.qbox.me/8612493c-d956-4845-a4fd-88c562ef35ba.png) 92 | -------------------------------------------------------------------------------- /static/layui/lay/modules/laypage.js: -------------------------------------------------------------------------------- 1 | /** layui-v1.0.9_rls MIT License By http://www.layui.com */ 2 | ;layui.define(function(a){"use strict";function t(a){new p(a)}var e=document,r="getElementById",n="getElementsByTagName",s=0,p=function(a){var t=this,e=t.config=a||{};e.item=s++,t.render(!0)};p.on=function(a,t,e){return a.attachEvent?a.attachEvent("on"+t,function(){e.call(a,window.even)}):a.addEventListener(t,e,!1),p},p.prototype.type=function(){var a=this.config;if("object"==typeof a.cont)return void 0===a.cont.length?2:3},p.prototype.view=function(){var a=this,t=a.config,e=[],r={};if(t.pages=0|t.pages,t.curr=0|t.curr||1,t.groups="groups"in t?0|t.groups:5,t.first="first"in t?t.first:"首页",t.last="last"in t?t.last:"末页",t.prev="prev"in t?t.prev:"上一页",t.next="next"in t?t.next:"下一页",t.pages<=1)return"";for(t.groups>t.pages&&(t.groups=t.pages),r.index=Math.ceil((t.curr+(t.groups>1&&t.groups!==t.pages?1:0))/(0===t.groups?1:t.groups)),t.curr>1&&t.prev&&e.push(''+t.prev+""),r.index>1&&t.first&&0!==t.groups&&e.push(''+t.first+""),r.poor=Math.floor((t.groups-1)/2),r.start=r.index>1?t.curr-r.poor:1,r.end=r.index>1?function(){var a=t.curr+(t.groups-r.poor-1);return a>t.pages?t.pages:a}():t.groups,r.end-r.start"+r.start+""):e.push(''+r.start+"");return t.pages>t.groups&&r.end'+t.last+""),r.flow=!t.prev&&0===t.groups,(t.curr!==t.pages&&t.next||r.flow)&&e.push(function(){return r.flow&&t.curr===t.pages?''+t.next+"":''+t.next+""}()),'
    '+e.join("")+function(){return t.skip?'到第 ':""}()+"
    "},p.prototype.jump=function(a){if(a){for(var t=this,e=t.config,r=a.children,s=a[n]("button")[0],i=a[n]("input")[0],u=0,o=r.length;u= maxNum) { 23 | $.alert('超出最大处理数字'); 24 | return ""; 25 | } 26 | if (money == 0) { 27 | ChineseStr = cnNums[0] + cnIntLast 28 | return ChineseStr; 29 | } 30 | money = money.toString(); //转换为字符串 31 | if (money.indexOf(".") == -1) { 32 | IntegerNum = money; 33 | DecimalNum = ''; 34 | } else { 35 | parts = money.split("."); 36 | IntegerNum = parts[0]; 37 | DecimalNum = parts[1].substr(0, 4); 38 | } 39 | if (parseInt(IntegerNum, 10) > 0) {//获取整型部分转换 40 | var zeroCount = 0; 41 | var IntLen = IntegerNum.length; 42 | for (var i = 0; i < IntLen; i++) { 43 | var n = IntegerNum.substr(i, 1); 44 | var p = IntLen - i - 1; 45 | var q = p / 4; 46 | var m = p % 4; 47 | if (n == "0") { 48 | zeroCount++; 49 | } else { 50 | if (zeroCount > 0) { 51 | ChineseStr += cnNums[0]; 52 | } 53 | zeroCount = 0; //归零 54 | ChineseStr += cnNums[parseInt(n)] + cnIntRadice[m]; 55 | } 56 | if (m == 0 && zeroCount < 4) { 57 | ChineseStr += cnIntUnits[q]; 58 | } 59 | } 60 | ChineseStr += cnIntLast; 61 | } 62 | if (DecimalNum != '') {//小数部分 63 | var decLen = DecimalNum.length; 64 | for (i = 0; i < decLen; i++) { 65 | n = DecimalNum.substr(i, 1); 66 | if (n != '0') { 67 | ChineseStr += cnNums[Number(n)] + cnDecUnits[i]; 68 | } 69 | } 70 | } 71 | if (ChineseStr == '') { 72 | ChineseStr += cnNums[0] + cnIntLast; 73 | } 74 | if(ChineseStr.charAt(ChineseStr.length - 1)==cnIntLast){ 75 | ChineseStr+=cnInteger 76 | } 77 | return ChineseStr; 78 | } 79 | function rmbToNum(rmb){ 80 | var num=""; 81 | rmb=rmb.indexOf('元')==rmb.length-1?rmb+'整':rmb; 82 | rmb=rmb.replace('圆','元'); 83 | var cnNums = new Array("零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖"); //汉字的数字 84 | for(var i=0;i-1){ 86 | num=num+cnNums.indexOf(rmb[i]) 87 | } 88 | if(rmb.indexOf('拾元')>-1 && rmb[i]=='元'){ 89 | num=num+'0'; 90 | } 91 | if(rmb[i]=='元' && rmb.indexOf('整')==-1 && rmb.indexOf('元')!=rmb.length-1 && num.indexOf('.')==-1){//如果不包含整且元后面有值则添加小数点 92 | num=num+'.'; 93 | } 94 | } 95 | return num; 96 | } -------------------------------------------------------------------------------- /src/pages/strsplit.vue: -------------------------------------------------------------------------------- 1 | 38 | -------------------------------------------------------------------------------- /src/App.vue: -------------------------------------------------------------------------------- 1 | 34 | 83 | 108 | -------------------------------------------------------------------------------- /src/components/YmHeader.vue: -------------------------------------------------------------------------------- 1 | 23 | 29 | -------------------------------------------------------------------------------- /static/layui/layui.js: -------------------------------------------------------------------------------- 1 | /** layui-v1.0.9_rls MIT License By http://www.layui.com */ 2 | ;!function(e){"use strict";var t=function(){this.v="1.0.9_rls"};t.fn=t.prototype;var n=document,o=t.fn.cache={},i=function(){var e=n.scripts,t=e[e.length-1].src;return t.substring(0,t.lastIndexOf("/")+1)}(),r=function(t){e.console&&console.error&&console.error("Layui hint: "+t)},l="undefined"!=typeof opera&&"[object Opera]"===opera.toString(),a={layer:"modules/layer",laydate:"modules/laydate",laypage:"modules/laypage",laytpl:"modules/laytpl",layim:"modules/layim",layedit:"modules/layedit",form:"modules/form",upload:"modules/upload",tree:"modules/tree",table:"modules/table",element:"modules/element",util:"modules/util",flow:"modules/flow",carousel:"modules/carousel",code:"modules/code",jquery:"modules/jquery",mobile:"modules/mobile","layui.all":"dest/layui.all"};o.modules={},o.status={},o.timeout=10,o.event={},t.fn.define=function(e,t){var n=this,i="function"==typeof e,r=function(){return"function"==typeof t&&t(function(e,t){layui[e]=t,o.status[e]=!0}),this};return i&&(t=e,e=[]),layui["layui.all"]||!layui["layui.all"]&&layui["layui.mobile"]?r.call(n):(n.use(e,r),n)},t.fn.use=function(e,t,u){function s(e,t){var n="PLaySTATION 3"===navigator.platform?/^complete$/:/^(complete|loaded)$/;("load"===e.type||n.test((e.currentTarget||e.srcElement).readyState))&&(o.modules[m]=t,y.removeChild(p),function i(){return++v>1e3*o.timeout/4?r(m+" is not a valid module"):void(o.status[m]?c():setTimeout(i,4))}())}function c(){u.push(layui[m]),e.length>1?f.use(e.slice(1),t,u):"function"==typeof t&&t.apply(layui,u)}var f=this,d=o.dir=o.dir?o.dir:i,y=n.getElementsByTagName("head")[0];e="string"==typeof e?[e]:e,window.jQuery&&jQuery.fn.on&&(f.each(e,function(t,n){"jquery"===n&&e.splice(t,1)}),layui.jquery=jQuery);var m=e[0],v=0;if(u=u||[],o.host=o.host||(d.match(/\/\/([\s\S]+?)\//)||["//"+location.host+"/"])[0],0===e.length||layui["layui.all"]&&a[m]||!layui["layui.all"]&&layui["layui.mobile"]&&a[m])return c(),f;var p=n.createElement("script"),h=(a[m]?d+"lay/":o.base||"")+(f.modules[m]||m)+".js";return p.async=!0,p.charset="utf-8",p.src=h+function(){var e=o.version===!0?o.v||(new Date).getTime():o.version||"";return e?"?v="+e:""}(),o.modules[m]?!function g(){return++v>1e3*o.timeout/4?r(m+" is not a valid module"):void("string"==typeof o.modules[m]&&o.status[m]?c():setTimeout(g,4))}():(y.appendChild(p),!p.attachEvent||p.attachEvent.toString&&p.attachEvent.toString().indexOf("[native code")<0||l?p.addEventListener("load",function(e){s(e,h)},!1):p.attachEvent("onreadystatechange",function(e){s(e,h)})),o.modules[m]=h,f},t.fn.getStyle=function(t,n){var o=t.currentStyle?t.currentStyle:e.getComputedStyle(t,null);return o[o.getPropertyValue?"getPropertyValue":"getAttribute"](n)},t.fn.link=function(e,t,i){var l=this,a=n.createElement("link"),u=n.getElementsByTagName("head")[0];"string"==typeof t&&(i=t);var s=(i||e).replace(/\.|\//g,""),c=a.id="layuicss-"+s,f=0;a.rel="stylesheet",a.href=e+(o.debug?"?v="+(new Date).getTime():""),a.media="all",n.getElementById(c)||u.appendChild(a),"function"==typeof t&&!function d(){return++f>1e3*o.timeout/100?r(e+" timeout"):void(1989===parseInt(l.getStyle(n.getElementById(c),"width"))?function(){t()}():setTimeout(d,100))}()},t.fn.addcss=function(e,t,n){layui.link(o.dir+"css/"+e,t,n)},t.fn.img=function(e,t,n){var o=new Image;return o.src=e,o.complete?t(o):(o.onload=function(){o.onload=null,t(o)},void(o.onerror=function(e){o.onerror=null,n(e)}))},t.fn.config=function(e){e=e||{};for(var t in e)o[t]=e[t];return this},t.fn.modules=function(){var e={};for(var t in a)e[t]=a[t];return e}(),t.fn.extend=function(e){var t=this;e=e||{};for(var n in e)t[n]||t.modules[n]?r("模块名 "+n+" 已被占用"):t.modules[n]=e[n];return t},t.fn.router=function(e){for(var t,n=(e||location.hash).replace(/^#/,"").split("/")||[],o={dir:[]},i=0;i'+(t.title||"unnaming")+""),s.append('
    '+(t.content||"")+"
    "),f.hideTabMore(!0),f.tabAuto(),this},s.prototype.tabDelete=function(i,t){var l=".layui-tab-title",e=a(".layui-tab[lay-filter="+i+"]"),n=e.children(l),s=n.find('>li[lay-id="'+t+'"]');return f.tabDelete(null,s),this},s.prototype.tabChange=function(i,t){var l=".layui-tab-title",e=a(".layui-tab[lay-filter="+i+"]"),n=e.children(l),s=n.find('>li[lay-id="'+t+'"]');return f.tabClick(null,null,s),this},s.prototype.progress=function(i,t){var l="layui-progress",e=a("."+l+"[lay-filter="+i+"]"),n=e.find("."+l+"-bar"),s=n.find("."+l+"-text");return n.css("width",t),s.text(t),this};var o=".layui-nav",c="layui-nav-item",r="layui-nav-bar",u="layui-nav-tree",d="layui-nav-child",h="layui-nav-more",y="layui-anim layui-anim-upbit",f={tabClick:function(i,t,s){var o=s||a(this),t=t||o.parent().children("li").index(o),c=o.parents(".layui-tab").eq(0),r=c.children(".layui-tab-content").children(".layui-tab-item"),u=c.attr("lay-filter");o.addClass(e).siblings().removeClass(e),r.eq(t).addClass(n).siblings().removeClass(n),layui.event.call(this,l,"tab("+u+")",{elem:c,index:t})},tabDelete:function(i,t){var l=t||a(this).parent(),n=l.index(),s=l.parents(".layui-tab").eq(0),o=s.children(".layui-tab-content").children(".layui-tab-item");l.hasClass(e)&&(l.next()[0]?f.tabClick.call(l.next()[0],null,n+1):l.prev()[0]&&f.tabClick.call(l.prev()[0],null,n-1)),l.remove(),o.eq(n).remove(),setTimeout(function(){f.tabAuto()},50)},tabAuto:function(){var i="layui-tab-more",l="layui-tab-bar",e="layui-tab-close",n=this;a(".layui-tab").each(function(){var s=a(this),o=s.children(".layui-tab-title"),c=(s.children(".layui-tab-content").children(".layui-tab-item"),'lay-stope="tabmore"'),r=a('');if(n===window&&8!=t.ie&&f.hideTabMore(!0),s.attr("lay-allowClose")&&o.find("li").each(function(){var i=a(this);if(!i.find("."+e)[0]){var t=a('');t.on("click",f.tabDelete),i.append(t)}}),o.prop("scrollWidth")>o.outerWidth()+1){if(o.find("."+l)[0])return;o.append(r),s.attr("overflow",""),r.on("click",function(a){o[this.title?"removeClass":"addClass"](i),this.title=this.title?"":"收缩"})}else o.find("."+l).remove(),s.removeAttr("overflow")})},hideTabMore:function(i){var t=a(".layui-tab-title");i!==!0&&"tabmore"===a(i.target).attr("lay-stope")||(t.removeClass("layui-tab-more"),t.find(".layui-tab-bar").attr("title",""))},clickThis:function(){var i=a(this),t=i.parents(o),n=t.attr("lay-filter");i.find("."+d)[0]||(t.find("."+e).removeClass(e),i.addClass(e),layui.event.call(this,l,"nav("+n+")",i))},clickChild:function(){var i=a(this),t=i.parents(o),n=t.attr("lay-filter");t.find("."+e).removeClass(e),i.addClass(e),layui.event.call(this,l,"nav("+n+")",i)},showChild:function(){var i=a(this),t=i.parents(o),l=i.parent(),e=i.siblings("."+d);t.hasClass(u)&&(e.removeClass(y),l["none"===e.css("display")?"addClass":"removeClass"](c+"ed"))},collapse:function(){var i=a(this),t=i.find(".layui-colla-icon"),e=i.siblings(".layui-colla-content"),s=i.parents(".layui-collapse").eq(0),o=s.attr("lay-filter"),c="none"===e.css("display");if("string"==typeof s.attr("lay-accordion")){var r=s.children(".layui-colla-item").children("."+n);r.siblings(".layui-colla-title").children(".layui-colla-icon").html(""),r.removeClass(n)}e[c?"addClass":"removeClass"](n),t.html(c?"":""),layui.event.call(this,l,"collapse("+o+")",{title:i,content:e,show:c})}};s.prototype.init=function(i){var l={tab:function(){f.tabAuto.call({})},nav:function(){var i,l,e,s=200,p=function(o,c){var r=a(this),f=r.find("."+d);c.hasClass(u)?o.css({top:r.position().top,height:r.children("a").height(),opacity:1}):(f.addClass(y),o.css({left:r.position().left+parseFloat(r.css("marginLeft")),top:r.position().top+r.height()-5}),i=setTimeout(function(){o.css({width:r.width(),opacity:1})},t.ie&&t.ie<10?0:s),clearTimeout(e),"block"===f.css("display")&&clearTimeout(l),l=setTimeout(function(){f.addClass(n),r.find("."+h).addClass(h+"d")},300))};a(o).each(function(){var t=a(this),o=a(''),y=t.find("."+c);t.find("."+r)[0]||(t.append(o),y.on("mouseenter",function(){p.call(this,o,t)}).on("mouseleave",function(){t.hasClass(u)||(clearTimeout(l),l=setTimeout(function(){t.find("."+d).removeClass(n),t.find("."+h).removeClass(h+"d")},300))}),t.on("mouseleave",function(){clearTimeout(i),e=setTimeout(function(){t.hasClass(u)?o.css({height:0,top:o.position().top+o.height()/2,opacity:0}):o.css({width:0,left:o.position().left+o.width()/2,opacity:0})},s)})),y.each(function(){var i=a(this),t=i.find("."+d);if(t[0]&&!i.find("."+h)[0]){var l=i.children("a");l.append('')}i.off("click",f.clickThis).on("click",f.clickThis),i.children("a").off("click",f.showChild).on("click",f.showChild),t.children("dd").off("click",f.clickChild).on("click",f.clickChild)})})},breadcrumb:function(){var i=".layui-breadcrumb";a(i).each(function(){var i=a(this),t=i.attr("lay-separator")||">",l=i.find("a");l.find(".layui-box")[0]||(l.each(function(i){i!==l.length-1&&a(this).append(''+t+"")}),i.css("visibility","visible"))})},progress:function(){var i="layui-progress";a("."+i).each(function(){var t=a(this),l=t.find(".layui-progress-bar"),e=l.attr("lay-percent");l.css("width",e),t.attr("lay-showPercent")&&setTimeout(function(){var a=Math.round(l.width()/t.width()*100);a>100&&(a=100),l.html(''+a+"%")},350)})},collapse:function(){var i="layui-collapse";a("."+i).each(function(){var i=a(this).find(".layui-colla-item");i.each(function(){var i=a(this),t=i.find(".layui-colla-title"),l=i.find(".layui-colla-content"),e="none"===l.css("display");t.find(".layui-colla-icon").remove(),t.append(''+(e?"":"")+""),t.off("click",f.collapse).on("click",f.collapse)})})}};return layui.each(l,function(i,a){a()})};var p=new s,v=a(document);p.init();var b=".layui-tab-title li";v.on("click",b,f.tabClick),v.on("click",f.hideTabMore),a(window).on("resize",f.tabAuto),i(l,function(i){return p.set(i)})}); -------------------------------------------------------------------------------- /static/layui/lay/modules/form.js: -------------------------------------------------------------------------------- 1 | /** layui-v1.0.9_rls MIT License By http://www.layui.com */ 2 | ;layui.define("layer",function(e){"use strict";var i=layui.jquery,t=layui.layer,a=layui.hint(),n=layui.device(),l="form",r=".layui-form",s="layui-this",o="layui-hide",c="layui-disabled",u=function(){this.config={verify:{required:[/[\S]+/,"必填项不能为空"],phone:[/^1\d{10}$/,"请输入正确的手机号"],email:[/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/,"邮箱格式不正确"],url:[/(^#)|(^http(s*):\/\/[^\s]+\.[^\s]+)/,"链接格式不正确"],number:[/^\d+$/,"只能填写数字"],date:[/^(\d{4})[-\/](\d{1}|0\d{1}|1[0-2])([-\/](\d{1}|0\d{1}|[1-2][0-9]|3[0-1]))*$/,"日期格式不正确"],identity:[/(^\d{15}$)|(^\d{17}(x|X|\d)$)/,"请输入正确的身份证号"]}}};u.prototype.set=function(e){var t=this;return i.extend(!0,t.config,e),t},u.prototype.verify=function(e){var t=this;return i.extend(!0,t.config.verify,e),t},u.prototype.on=function(e,i){return layui.onevent(l,e,i)},u.prototype.render=function(e){var t=this,n={select:function(){var e,t="请选择",a="layui-form-select",n="layui-select-title",u="layui-select-none",d="",f=i(r).find("select"),y=function(t,l){i(t.target).parent().hasClass(n)&&!l||(i("."+a).removeClass(a+"ed"),e&&d&&e.val(d)),e=null},v=function(t,r,f){var v=i(this),h=t.find("."+n),p=h.find("input"),m=t.find("dl"),k=m.children("dd");if(!r){var b=function(){t.addClass(a+"ed"),k.removeClass(o)},x=function(){t.removeClass(a+"ed"),p.blur(),g(p.val(),function(e){e&&(d=m.find("."+s).html(),p&&p.val(d))})};h.on("click",function(e){t.hasClass(a+"ed")?x():(y(e,!0),b()),m.find("."+u).remove()}),h.find(".layui-edge").on("click",function(){p.focus()}),p.on("keyup",function(e){var i=e.keyCode;9===i&&b()}).on("keydown",function(e){var i=e.keyCode;9===i?x():13===i&&e.preventDefault()});var g=function(e,t,a){var n=0;layui.each(k,function(){var t=i(this),l=t.text(),r=l.indexOf(e)===-1;(""===e||"blur"===a?e!==l:r)&&n++,"keyup"===a&&t[r?"addClass":"removeClass"](o)});var l=n===k.length;return t(l),l},C=function(e){var i=this.value,t=e.keyCode;return 9!==t&&13!==t&&37!==t&&38!==t&&39!==t&&40!==t&&(g(i,function(e){e?m.find("."+u)[0]||m.append('

    无匹配项

    '):m.find("."+u).remove()},"keyup"),void(""===i&&m.find("."+u).remove()))};f&&p.on("keyup",C).on("blur",function(i){e=p,d=m.find("."+s).html(),setTimeout(function(){g(p.val(),function(e){e&&!d&&p.val("")},"blur")},200)}),k.on("click",function(){var e=i(this),a=e.attr("lay-value"),n=v.attr("lay-filter");return!e.hasClass(c)&&(v.val(a).removeClass("layui-form-danger"),p.val(e.text()),e.addClass(s).siblings().removeClass(s),layui.event.call(this,l,"select("+n+")",{elem:v[0],value:a,othis:t}),x(),!1)}),t.find("dl>dt").on("click",function(e){return!1}),i(document).off("click",y).on("click",y)}};f.each(function(e,l){var r=i(this),o=r.next("."+a),u=this.disabled,d=l.value,f=i(l.options[l.selectedIndex]);if("string"==typeof r.attr("lay-ignore"))return r.show();var y="string"==typeof r.attr("lay-search"),h=i(['
    ','
    ','
    ','
    '+function(e){var i=[];return layui.each(e,function(e,t){(0!==e||t.value)&&("optgroup"===t.tagName.toLowerCase()?i.push("
    "+t.label+"
    "):i.push('
    '+t.innerHTML+"
    "))}),i.join("")}(r.find("*"))+"
    ","
    "].join(""));o[0]&&o.remove(),r.after(h),v.call(this,h,u,y)})},checkbox:function(){var e={checkbox:["layui-form-checkbox","layui-form-checked","checkbox"],_switch:["layui-form-switch","layui-form-onswitch","switch"]},t=i(r).find("input[type=checkbox]"),a=function(e,t){var a=i(this);e.on("click",function(){var i=a.attr("lay-filter"),n=(a.attr("lay-text")||"").split("|");a[0].disabled||(a[0].checked?(a[0].checked=!1,e.removeClass(t[1]).find("em").text(n[1])):(a[0].checked=!0,e.addClass(t[1]).find("em").text(n[0])),layui.event.call(a[0],l,t[2]+"("+i+")",{elem:a[0],value:a[0].value,othis:e}))})};t.each(function(t,n){var l=i(this),r=l.attr("lay-skin"),s=(l.attr("lay-text")||"").split("|"),o=this.disabled;"switch"===r&&(r="_"+r);var u=e[r]||e.checkbox;if("string"==typeof l.attr("lay-ignore"))return l.show();var d=l.next("."+u[0]),f=i(['
    ',{_switch:""+((n.checked?s[0]:s[1])||"")+""}[r]||(n.title.replace(/\s/g,"")?""+n.title+"":"")+''+(r?"":"")+"","
    "].join(""));d[0]&&d.remove(),l.after(f),a.call(this,f,u)})},radio:function(){var e="layui-form-radio",t=["",""],a=i(r).find("input[type=radio]"),n=function(a){var n=i(this),s="layui-anim-scaleSpring";a.on("click",function(){var o=n[0].name,c=n.parents(r),u=n.attr("lay-filter"),d=c.find("input[name="+o.replace(/(\.|#|\[|\])/g,"\\$1")+"]");n[0].disabled||(layui.each(d,function(){var a=i(this).next("."+e);this.checked=!1,a.removeClass(e+"ed"),a.find(".layui-icon").removeClass(s).html(t[1])}),n[0].checked=!0,a.addClass(e+"ed"),a.find(".layui-icon").addClass(s).html(t[0]),layui.event.call(n[0],l,"radio("+u+")",{elem:n[0],value:n[0].value,othis:a}))})};a.each(function(a,l){var r=i(this),s=r.next("."+e),o=this.disabled;if("string"==typeof r.attr("lay-ignore"))return r.show();var u=i(['
    ',''+t[l.checked?0:1]+"",""+(l.title||"未命名")+"","
    "].join(""));s[0]&&s.remove(),r.after(u),n.call(this,u)})}};return e?n[e]?n[e]():a.error("不支持的"+e+"表单渲染"):layui.each(n,function(e,i){i()}),t};var d=function(){var e=i(this),a=f.config.verify,s=null,o="layui-form-danger",c={},u=e.parents(r),d=u.find("*[lay-verify]"),y=e.parents("form")[0],v=u.find("input,select,textarea"),h=e.attr("lay-filter");return layui.each(d,function(e,l){var r=i(this),c=r.attr("lay-verify").split("|"),u="",d=r.val();if(r.removeClass(o),layui.each(c,function(e,i){var c="function"==typeof a[i];if(a[i]&&(c?u=a[i](d,l):!a[i][0].test(d)))return t.msg(u||a[i][1],{icon:5,shift:6}),n.android||n.ios||l.focus(),r.addClass(o),s=!0}),s)return s}),!s&&(layui.each(v,function(e,i){i.name&&(/^checkbox|radio$/.test(i.type)&&!i.checked||(c[i.name]=i.value))}),layui.event.call(this,l,"submit("+h+")",{elem:this,form:y,field:c}))},f=new u,y=i(document);f.render(),y.on("reset",r,function(){setTimeout(function(){f.render()},50)}),y.on("submit",r,d).on("click","*[lay-submit]",d),e(l,function(e){return f.set(e)})}); -------------------------------------------------------------------------------- /src/pages/encode.vue: -------------------------------------------------------------------------------- 1 | 42 | -------------------------------------------------------------------------------- /src/pages/fanyi.vue: -------------------------------------------------------------------------------- 1 | 48 | 177 | -------------------------------------------------------------------------------- /static/layui/css/layui.mobile.css: -------------------------------------------------------------------------------- 1 | /** layui-v1.0.9_rls MIT License By http://www.layui.com */ 2 | blockquote,body,button,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,input,legend,li,ol,p,td,textarea,th,ul{margin:0;padding:0;-webkit-tap-highlight-color:rgba(0,0,0,0)}html{font:12px 'Helvetica Neue','PingFang SC',STHeitiSC-Light,Helvetica,Arial,sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}a,button,input{-webkit-tap-highlight-color:rgba(255,0,0,0)}a{text-decoration:none;background:0 0}a:active,a:hover{outline:0}table{border-collapse:collapse;border-spacing:0}li{list-style:none}b,strong{font-weight:700}h1,h2,h3,h4,h5,h6{font-weight:500}address,cite,dfn,em,var{font-style:normal}dfn{font-style:italic}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}img{border:0;vertical-align:bottom}.layui-inline,input,label{vertical-align:middle}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0;outline:0}button,select{text-transform:none}select{-webkit-appearance:none;border:none}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}@font-face{font-family:layui-icon;src:url(../font/iconfont.eot?v=1.0.7);src:url(../font/iconfont.eot?v=1.0.7#iefix) format('embedded-opentype'),url(../font/iconfont.woff?v=1.0.7) format('woff'),url(../font/iconfont.ttf?v=1.0.7) format('truetype'),url(../font/iconfont.svg?v=1.0.7#iconfont) format('svg')}.layui-icon{font-family:layui-icon!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.layui-box,.layui-box *{-webkit-box-sizing:content-box!important;-moz-box-sizing:content-box!important;box-sizing:content-box!important}.layui-border-box,.layui-border-box *{-webkit-box-sizing:border-box!important;-moz-box-sizing:border-box!important;box-sizing:border-box!important}.layui-inline{position:relative;display:inline-block;*display:inline;*zoom:1}.layui-edge,.layui-upload-iframe{position:absolute;width:0;height:0}.layui-edge{border-style:dashed;border-color:transparent;overflow:hidden}.layui-elip{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-unselect{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-disabled,.layui-disabled:active{background-color:#d2d2d2!important;color:#fff!important;cursor:not-allowed!important}.layui-circle{border-radius:100%}.layui-show{display:block!important}.layui-hide{display:none!important}.layui-upload-iframe{border:0;visibility:hidden}.layui-upload-enter{border:1px solid #009E94;background-color:#009E94;color:#fff;-webkit-transform:scale(1.1);transform:scale(1.1)}.layui-m-layer{position:relative;z-index:19891014}.layui-m-layer *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.layui-m-layermain,.layui-m-layershade{position:fixed;left:0;top:0;width:100%;height:100%}.layui-m-layershade{background-color:rgba(0,0,0,.7);pointer-events:auto}.layui-m-layermain{display:table;font-family:Helvetica,arial,sans-serif;pointer-events:none}.layui-m-layermain .layui-m-layersection{display:table-cell;vertical-align:middle;text-align:center}.layui-m-layerchild{position:relative;display:inline-block;text-align:left;background-color:#fff;font-size:14px;border-radius:5px;box-shadow:0 0 8px rgba(0,0,0,.1);pointer-events:auto;-webkit-overflow-scrolling:touch;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.2s;animation-duration:.2s}@-webkit-keyframes layui-m-anim-scale{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes layui-m-anim-scale{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}.layui-m-anim-scale{animation-name:layui-m-anim-scale;-webkit-animation-name:layui-m-anim-scale}@-webkit-keyframes layui-m-anim-up{0%{opacity:0;-webkit-transform:translateY(800px);transform:translateY(800px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes layui-m-anim-up{0%{opacity:0;-webkit-transform:translateY(800px);transform:translateY(800px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}.layui-m-anim-up{-webkit-animation-name:layui-m-anim-up;animation-name:layui-m-anim-up}.layui-m-layer0 .layui-m-layerchild{width:90%;max-width:640px}.layui-m-layer1 .layui-m-layerchild{border:none;border-radius:0}.layui-m-layer2 .layui-m-layerchild{width:auto;max-width:260px;min-width:40px;border:none;background:0 0;box-shadow:none;color:#fff}.layui-m-layerchild h3{padding:0 10px;height:60px;line-height:60px;font-size:16px;font-weight:400;border-radius:5px 5px 0 0;text-align:center}.layui-m-layerbtn span,.layui-m-layerchild h3{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-m-layercont{padding:50px 30px;line-height:22px;text-align:center}.layui-m-layer1 .layui-m-layercont{padding:0;text-align:left}.layui-m-layer2 .layui-m-layercont{text-align:center;padding:0;line-height:0}.layui-m-layer2 .layui-m-layercont i{width:25px;height:25px;margin-left:8px;display:inline-block;background-color:#fff;border-radius:100%;-webkit-animation:layui-m-anim-loading 1.4s infinite ease-in-out;animation:layui-m-anim-loading 1.4s infinite ease-in-out;-webkit-animation-fill-mode:both;animation-fill-mode:both}.layui-m-layerbtn,.layui-m-layerbtn span{position:relative;text-align:center;border-radius:0 0 5px 5px}.layui-m-layer2 .layui-m-layercont p{margin-top:20px}@-webkit-keyframes layui-m-anim-loading{0%,100%,80%{transform:scale(0);-webkit-transform:scale(0)}40%{transform:scale(1);-webkit-transform:scale(1)}}@keyframes layui-m-anim-loading{0%,100%,80%{transform:scale(0);-webkit-transform:scale(0)}40%{transform:scale(1);-webkit-transform:scale(1)}}.layui-m-layer2 .layui-m-layercont i:first-child{margin-left:0;-webkit-animation-delay:-.32s;animation-delay:-.32s}.layui-m-layer2 .layui-m-layercont i.layui-m-layerload{-webkit-animation-delay:-.16s;animation-delay:-.16s}.layui-m-layer2 .layui-m-layercont>div{line-height:22px;padding-top:7px;margin-bottom:20px;font-size:14px}.layui-m-layerbtn{display:box;display:-moz-box;display:-webkit-box;width:100%;height:50px;line-height:50px;font-size:0;border-top:1px solid #D0D0D0;background-color:#F2F2F2}.layui-m-layerbtn span{display:block;-moz-box-flex:1;box-flex:1;-webkit-box-flex:1;font-size:14px;cursor:pointer}.layui-m-layerbtn span[yes]{color:#40AFFE}.layui-m-layerbtn span[no]{border-right:1px solid #D0D0D0;border-radius:0 0 0 5px}.layui-m-layerbtn span:active{background-color:#F6F6F6}.layui-m-layerend{position:absolute;right:7px;top:10px;width:30px;height:30px;border:0;font-weight:400;background:0 0;cursor:pointer;-webkit-appearance:none;font-size:30px}.layui-m-layerend::after,.layui-m-layerend::before{position:absolute;left:5px;top:15px;content:'';width:18px;height:1px;background-color:#999;transform:rotate(45deg);-webkit-transform:rotate(45deg);border-radius:3px}.layui-m-layerend::after{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}body .layui-m-layer .layui-m-layer-footer{position:fixed;width:95%;max-width:100%;margin:0 auto;left:0;right:0;bottom:10px;background:0 0}.layui-m-layer-footer .layui-m-layercont{padding:20px;border-radius:5px 5px 0 0;background-color:rgba(255,255,255,.8)}.layui-m-layer-footer .layui-m-layerbtn{display:block;height:auto;background:0 0;border-top:none}.layui-m-layer-footer .layui-m-layerbtn span{background-color:rgba(255,255,255,.8)}.layui-m-layer-footer .layui-m-layerbtn span[no]{color:#FD482C;border-top:1px solid #c2c2c2;border-radius:0 0 5px 5px}.layui-m-layer-footer .layui-m-layerbtn span[yes]{margin-top:10px;border-radius:5px}body .layui-m-layer .layui-m-layer-msg{width:auto;max-width:90%;margin:0 auto;bottom:-150px;background-color:rgba(0,0,0,.7);color:#fff}.layui-m-layer-msg .layui-m-layercont{padding:10px 20px} -------------------------------------------------------------------------------- /static/layui/css/modules/laydate/laydate.css: -------------------------------------------------------------------------------- 1 | /** layui-v1.0.9_rls MIT License By http://www.layui.com */ 2 | #layuicss-laydatecss{display:none;position:absolute;width:1989px}.laydate_body .laydate_box,.laydate_body .laydate_box *{margin:0;padding:0;box-sizing:content-box}.laydate-icon,.laydate-icon-dahong,.laydate-icon-danlan,.laydate-icon-default,.laydate-icon-molv{height:22px;line-height:22px;padding-right:20px;border:1px solid #C6C6C6;background-repeat:no-repeat;background-position:right center;background-color:#fff;outline:0}.laydate-icon-default{background-image:url(../skins/default/icon.png)}.laydate-icon-danlan{border:1px solid #B1D2EC;background-image:url(../skins/danlan/icon.png)}.laydate-icon-dahong{background-image:url(../skins/dahong/icon.png)}.laydate-icon-molv{background-image:url(../skins/molv/icon.png)}.laydate_body .laydate_box{width:240px;font:12px '\5B8B\4F53';z-index:99999999;*overflow:hidden;_margin:0;_position:absolute!important}.laydate_body .laydate_box li{list-style:none}.laydate_body .laydate_box .laydate_void{cursor:text!important}.laydate_body .laydate_box cite,.laydate_body .laydate_box label{position:absolute;width:0;height:0;border-width:5px;border-style:dashed;border-color:transparent;overflow:hidden;cursor:pointer}.laydate_body .laydate_box .laydate_time,.laydate_body .laydate_box .laydate_yms{display:none}.laydate_body .laydate_box .laydate_show{display:block}.laydate_body .laydate_box input{outline:0;font-size:14px;background-color:#fff;color:#333}.laydate_body .laydate_top{position:relative;height:26px;padding:5px;*width:100%;z-index:99}.laydate_body .laydate_ym{position:relative;float:left;height:24px;cursor:pointer}.laydate_body .laydate_ym input{float:left;height:24px;line-height:24px;text-align:center;border:none;cursor:pointer}.laydate_body .laydate_ym .laydate_yms{position:absolute;left:-1px;top:24px;height:181px}.laydate_body .laydate_y{width:121px;margin-right:6px}.laydate_body .laydate_y input{width:64px;margin-right:15px}.laydate_body .laydate_y .laydate_yms{width:121px;text-align:center}.laydate_body .laydate_y .laydate_yms a{position:relative;display:block;height:20px}.laydate_body .laydate_y .laydate_yms ul{height:139px;padding:0;*overflow:hidden}.laydate_body .laydate_y .laydate_yms ul li{float:left;width:60px;height:20px;line-height:20px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.laydate_body .laydate_m{width:99px}.laydate_body .laydate_m .laydate_yms{width:99px;padding:0}.laydate_body .laydate_m input{width:42px;margin-right:15px}.laydate_body .laydate_m .laydate_yms span{display:block;float:left;width:42px;margin:5px 0 0 5px;line-height:24px;text-align:center;_display:inline}.laydate_body .laydate_choose{display:block;float:left;position:relative;width:20px;height:24px}.laydate_body .laydate_choose cite,.laydate_body .laydate_tab cite{left:50%;top:50%}.laydate_body .laydate_chtop cite{margin:-7px 0 0 -5px;border-bottom-style:solid}.laydate_body .laydate_chdown cite,.laydate_body .laydate_ym label{top:50%;margin:-2px 0 0 -5px;border-top-style:solid}.laydate_body .laydate_chprev cite{margin:-5px 0 0 -7px}.laydate_body .laydate_chnext cite{margin:-5px 0 0 -2px}.laydate_body .laydate_ym label{right:28px}.laydate_body .laydate_table{width:230px;margin:0 5px;border-collapse:collapse;border-spacing:0}.laydate_body .laydate_table td{width:31px;text-align:center;cursor:pointer;font-size:12px}.laydate_body .laydate_table thead th{font-weight:400;font-size:12px;text-align:center}.laydate_body .laydate_bottom{position:relative;height:22px;line-height:20px;padding:5px;font-size:12px}.laydate_body .laydate_bottom #laydate_hms{position:relative;z-index:1;float:left}.laydate_body .laydate_time{position:absolute;left:5px;bottom:26px;width:129px;height:125px;*overflow:hidden}.laydate_body .laydate_time .laydate_hmsno{padding:5px 0 0 5px}.laydate_body .laydate_time .laydate_hmsno span{display:block;float:left;width:24px;height:19px;line-height:19px;text-align:center;cursor:pointer;*margin-bottom:-5px}.laydate_body .laydate_time1{width:228px;height:154px}.laydate_body .laydate_time1 .laydate_hmsno{padding:6px 0 0 8px}.laydate_body .laydate_time1 .laydate_hmsno span{width:21px;height:20px;line-height:20px}.laydate_body .laydate_msg{left:49px;bottom:67px;width:141px;height:auto;overflow:hidden}.laydate_body .laydate_msg p{padding:5px 10px}.laydate_body .laydate_bottom li{float:left;height:20px;line-height:20px;border-right:none;font-weight:900}.laydate_body .laydate_bottom .laydate_sj{width:33px;text-align:center;font-weight:400}.laydate_body .laydate_bottom input{float:left;width:21px;height:20px;line-height:20px;border:none;text-align:center;cursor:pointer;font-size:12px;font-weight:400}.laydate_body .laydate_bottom .laydte_hsmtex{height:20px;line-height:20px;text-align:center}.laydate_body .laydate_bottom .laydte_hsmtex span{position:absolute;width:20px;top:0;right:0;cursor:pointer}.laydate_body .laydate_bottom .laydte_hsmtex span:hover{font-size:14px}.laydate_body .laydate_bottom .laydate_btn{position:absolute;right:5px;top:5px}.laydate_body .laydate_bottom .laydate_btn a{float:left;height:20px;padding:0 6px;_padding:0 5px}.laydate_body .laydate_table td,.laydate_body .laydate_table thead{height:21px!important;line-height:21px!important}.laydate-icon{border:1px solid #C6C6C6;background-image:url(icon.png)}.laydate_body .laydate_bottom #laydate_hms,.laydate_body .laydate_bottom .laydate_btn a,.laydate_body .laydate_box,.laydate_body .laydate_table,.laydate_body .laydate_table td,.laydate_body .laydate_time,.laydate_body .laydate_ym,.laydate_body .laydate_ym .laydate_yms{border:1px solid #ccc}.laydate_body .laydate_bottom .laydte_hsmtex,.laydate_body .laydate_choose,.laydate_body .laydate_table thead,.laydate_body .laydate_y .laydate_yms a{background-color:#F6F6F6}.laydate_body .laydate_box,.laydate_body .laydate_time,.laydate_body .laydate_ym .laydate_yms{box-shadow:2px 2px 5px rgba(0,0,0,.1)}.laydate_body .laydate_box{border-top:none;border-bottom:none;background-color:#fff;color:#333}.laydate_body .laydate_box .laydate_void{color:#ccc!important}.laydate_body .laydate_box .laydate_void:hover{background-color:#fff!important}.laydate_body .laydate_box a,.laydate_body .laydate_box a:hover{text-decoration:none;blr:expression(this.onFocus=this.blur());cursor:pointer;color:#333}.laydate_body .laydate_box a:hover{text-decoration:none;color:#666}.laydate_body .laydate_click{background-color:#eee!important}.laydate_body .laydate_bottom #laydate_hms,.laydate_body .laydate_choose:hover,.laydate_body .laydate_table td,.laydate_body .laydate_time,.laydate_body .laydate_y .laydate_yms a:hover{background-color:#fff}.laydate_body .laydate_top{border-top:1px solid #C6C6C6}.laydate_body .laydate_ym .laydate_yms{border:1px solid #C6C6C6;background-color:#fff}.laydate_body .laydate_y .laydate_yms a{border-bottom:1px solid #C6C6C6}.laydate_body .laydate_y .laydate_yms .laydate_chdown{border-top:1px solid #C6C6C6;border-bottom:none}.laydate_body .laydate_choose{border-left:1px solid #C6C6C6}.laydate_body .laydate_chprev{border-left:none;border-right:1px solid #C6C6C6}.laydate_body .laydate_chtop cite{border-bottom-color:#666}.laydate_body .laydate_chdown cite,.laydate_body .laydate_ym label{border-top-color:#666}.laydate_body .laydate_chprev cite{border-right-style:solid;border-right-color:#666}.laydate_body .laydate_chnext cite{border-left-style:solid;border-left-color:#666}.laydate_body .laydate_table td{border:none}.laydate_body .laydate_table .laydate_nothis{color:#999}.laydate_body .laydate_table thead th{border-bottom:1px solid #ccc}.laydate_body .laydate_bottom,.laydate_body .laydate_bottom .laydte_hsmtex{border-bottom:1px solid #C6C6C6}.laydate_body .laydate_bottom .laydate_sj{border-right:1px solid #C6C6C6;background-color:#F6F6F6}.laydate_body .laydate_bottom input{background-color:#fff}.laydate_body .laydate_bottom .laydate_btn{border-right:1px solid #C6C6C6}.laydate_body .laydate_bottom .laydate_v{position:absolute;left:10px;top:6px;font-family:Courier;z-index:0;color:#999}.laydate_body .laydate_bottom .laydate_btn a{border-right:none;background-color:#F6F6F6}.laydate_body .laydate_bottom .laydate_btn a:hover{color:#000;background-color:#fff}.laydate_body .laydate_m .laydate_yms span:hover,.laydate_body .laydate_table td:hover,.laydate_body .laydate_time .laydate_hmsno span:hover,.laydate_body .laydate_y .laydate_yms ul li:hover{background-color:#F3F3F3} -------------------------------------------------------------------------------- /src/pages/encrypt.vue: -------------------------------------------------------------------------------- 1 | 80 | -------------------------------------------------------------------------------- /src/assets/css/markdown.css: -------------------------------------------------------------------------------- 1 | .artcontent { 2 | font-size: 14px; 3 | } 4 | .artcontent a { 5 | color: #4183C4; } 6 | .artcontent a.absent { 7 | color: #cc0000; } 8 | .artcontent a.anchor { 9 | display: block; 10 | padding-left: 30px; 11 | margin-left: -30px; 12 | cursor: pointer; 13 | position: absolute; 14 | top: 0; 15 | left: 0; 16 | bottom: 0; } 17 | 18 | .artcontent h1, .artcontent h2,.artcontent h3,.artcontent h4,.artcontent h5,.artcontent h6 { 19 | margin: 20px 0 10px; 20 | padding: 0; 21 | font-weight: bold; 22 | -webkit-font-smoothing: antialiased; 23 | cursor: text; 24 | position: relative; } 25 | 26 | .artcontent h1:hover a.anchor, .artcontent h2:hover a.anchor, .artcontent h3:hover a.anchor,.artcontent h4:hover a.anchor,.artcontent h5:hover a.anchor,.artcontent h6:hover a.anchor { 27 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA09pVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoMTMuMCAyMDEyMDMwNS5tLjQxNSAyMDEyLzAzLzA1OjIxOjAwOjAwKSAgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OUM2NjlDQjI4ODBGMTFFMTg1ODlEODNERDJBRjUwQTQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OUM2NjlDQjM4ODBGMTFFMTg1ODlEODNERDJBRjUwQTQiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo5QzY2OUNCMDg4MEYxMUUxODU4OUQ4M0REMkFGNTBBNCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo5QzY2OUNCMTg4MEYxMUUxODU4OUQ4M0REMkFGNTBBNCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PsQhXeAAAABfSURBVHjaYvz//z8DJYCRUgMYQAbAMBQIAvEqkBQWXI6sHqwHiwG70TTBxGaiWwjCTGgOUgJiF1J8wMRAIUA34B4Q76HUBelAfJYSA0CuMIEaRP8wGIkGMA54bgQIMACAmkXJi0hKJQAAAABJRU5ErkJggg==) no-repeat 10px center; 28 | text-decoration: none; } 29 | 30 | .artcontent h1 tt, .artcontent h1 code { 31 | font-size: inherit; } 32 | 33 | .artcontent h2 tt,.artcontent h2 code { 34 | font-size: inherit; } 35 | 36 | .artcontent h3 tt,.artcontent h3 code { 37 | font-size: inherit; } 38 | 39 | .artcontent h4 tt,.artcontent h4 code { 40 | font-size: inherit; } 41 | 42 | .artcontent h5 tt,.artcontent h5 code { 43 | font-size: inherit; } 44 | 45 | .artcontent h6 tt, .artcontent h6 code { 46 | font-size: inherit; } 47 | 48 | .artcontent h1 { 49 | font-size: 28px; 50 | color: #2B3F52; } 51 | 52 | .artcontent h2 { 53 | font-size: 24px; 54 | border-bottom: 1px solid #DDE4E9; 55 | color: #2B3F52; } 56 | 57 | .artcontent h3 { 58 | font-size: 18px; 59 | color: #2B3F52; } 60 | 61 | .artcontent h4 { 62 | font-size: 16px; 63 | color: #2B3F52; } 64 | 65 | .artcontent h5 { 66 | font-size: 14px; 67 | color: #2B3F52; } 68 | 69 | .artcontent h6 { 70 | color: #2B3F52; 71 | font-size: 14px; 72 | } 73 | 74 | .artcontent p, .artcontent blockquote, .artcontent ul,.artcontent ol, .artcontent dl, .artcontent li, .artcontent table,.artcontent pre { 75 | margin: 15px 0; 76 | } 77 | 78 | .artcontent hr { 79 | background: transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAECAYAAACtBE5DAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBNYWNpbnRvc2giIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OENDRjNBN0E2NTZBMTFFMEI3QjRBODM4NzJDMjlGNDgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OENDRjNBN0I2NTZBMTFFMEI3QjRBODM4NzJDMjlGNDgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4Q0NGM0E3ODY1NkExMUUwQjdCNEE4Mzg3MkMyOUY0OCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4Q0NGM0E3OTY1NkExMUUwQjdCNEE4Mzg3MkMyOUY0OCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PqqezsUAAAAfSURBVHjaYmRABcYwBiM2QSA4y4hNEKYDQxAEAAIMAHNGAzhkPOlYAAAAAElFTkSuQmCC) repeat-x 0 0; 80 | border: 0 none; 81 | color: #cccccc; 82 | height: 4px; 83 | padding: 0; 84 | 85 | } 86 | 87 | .artcontent > h2:first-child { 88 | margin-top: 0; 89 | padding-top: 0; } 90 | .artcontent > h1:first-child { 91 | margin-top: 0; 92 | padding-top: 0; } 93 | .artcontent > h1:first-child + h2 { 94 | margin-top: 0; 95 | padding-top: 0; } 96 | .artcontent > h3:first-child, .artcontent > h4:first-child, .artcontent > h5:first-child, .artcontent > h6:first-child { 97 | margin-top: 0; 98 | padding-top: 0; } 99 | 100 | .artcontent a:first-child h1,.artcontent a:first-child h2,.artcontent a:first-child h3,.artcontent a:first-child h4, .artcontent a:first-child h5, .artcontent a:first-child h6 { 101 | margin-top: 0; 102 | padding-top: 0; } 103 | 104 | .artcontent h1 p, .artcontent h2 p,.artcontent h3 p, .artcontent h4 p,.artcontent h5 p,.artcontent h6 p { 105 | margin-top: 0; } 106 | 107 | .artcontent li p.first { 108 | display: inline-block; } 109 | .artcontent li { 110 | margin: 0; } 111 | .artcontent ul, .artcontent ol { 112 | padding-left: 30px; } 113 | 114 | .artcontent ul :first-child, ol :first-child { 115 | margin-top: 0; } 116 | 117 | .artcontent dl { 118 | padding: 0; } 119 | .artcontent dl dt { 120 | font-size: 14px; 121 | font-weight: bold; 122 | font-style: italic; 123 | padding: 0; 124 | margin: 15px 0 5px; } 125 | .artcontent dl dt:first-child { 126 | padding: 0; } 127 | .artcontent dl dt > :first-child { 128 | margin-top: 0; } 129 | .artcontent dl dt > :last-child { 130 | margin-bottom: 0; } 131 | .artcontent dl dd { 132 | margin: 0 0 15px; 133 | padding: 0 15px; } 134 | .artcontent dl dd > :first-child { 135 | margin-top: 0; } 136 | .artcontent dl dd > :last-child { 137 | margin-bottom: 0; } 138 | 139 | .artcontent blockquote { 140 | border-left: 4px solid #2B3F52; 141 | /*padding: 0 15px;*/ 142 | padding: 15px; 143 | color: #2B3F52; } 144 | .artcontent blockquote > :first-child { 145 | margin-top: 0; } 146 | .artcontent blockquote > :last-child { 147 | margin-bottom: 0; } 148 | 149 | .artcontent table { 150 | padding: 0;border-collapse: collapse; } 151 | .artcontent table tr { 152 | border-top: 1px solid #cccccc; 153 | background-color: white; 154 | margin: 0; 155 | padding: 0; } 156 | .artcontent table tr:nth-child(2n) { 157 | background-color: #f8f8f8; } 158 | .artcontent table tr th { 159 | font-weight: bold; 160 | border: 1px solid #cccccc; 161 | margin: 0; 162 | padding: 6px 13px; } 163 | .artcontent table tr td { 164 | border: 1px solid #cccccc; 165 | margin: 0; 166 | padding: 6px 13px; } 167 | .artcontent table tr th :first-child,.artcontent table tr td :first-child { 168 | margin-top: 0; } 169 | .artcontent table tr th :last-child, .artcontent table tr td :last-child { 170 | margin-bottom: 0; } 171 | 172 | .artcontent img { 173 | max-width: 100%; } 174 | 175 | .artcontent span.frame { 176 | display: block; 177 | overflow: hidden; } 178 | .artcontent span.frame > span { 179 | border: 1px solid #dddddd; 180 | display: block; 181 | float: left; 182 | overflow: hidden; 183 | margin: 13px 0 0; 184 | padding: 7px; 185 | width: auto; } 186 | .artcontent span.frame span img { 187 | display: block; 188 | float: left; } 189 | .artcontent span.frame span span { 190 | clear: both; 191 | color: #333333; 192 | display: block; 193 | padding: 5px 0 0; } 194 | .artcontent span.align-center { 195 | display: block; 196 | overflow: hidden; 197 | clear: both; } 198 | span.align-center > span { 199 | display: block; 200 | overflow: hidden; 201 | margin: 13px auto 0; 202 | text-align: center; } 203 | span.align-center span img { 204 | margin: 0 auto; 205 | text-align: center; } 206 | .artcontent span.align-right { 207 | display: block; 208 | overflow: hidden; 209 | clear: both; } 210 | .artcontent span.align-right > span { 211 | display: block; 212 | overflow: hidden; 213 | margin: 13px 0 0; 214 | text-align: right; } 215 | .artcontent span.align-right span img { 216 | margin: 0; 217 | text-align: right; } 218 | .artcontent span.float-left { 219 | display: block; 220 | margin-right: 13px; 221 | overflow: hidden; 222 | float: left; } 223 | .artcontent span.float-left span { 224 | margin: 13px 0 0; } 225 | .artcontent span.float-right { 226 | display: block; 227 | margin-left: 13px; 228 | overflow: hidden; 229 | float: right; } 230 | .artcontent span.float-right > span { 231 | display: block; 232 | overflow: hidden; 233 | margin: 13px auto 0; 234 | text-align: right; } 235 | 236 | .artcontent code,.artcontent tt { 237 | margin: 0 2px; 238 | padding: 0 5px; 239 | white-space: nowrap; 240 | border: 1px solid #9c978f; 241 | background-color: #dedede; 242 | border-radius: 3px; } 243 | 244 | .artcontent pre code { 245 | margin: 0; 246 | padding: 0; 247 | /*white-space: pre;*/ 248 | border: none; 249 | background: transparent; } 250 | .artcontent ol{ 251 | list-style: decimal; 252 | } 253 | .artcontent .highlight pre { 254 | background-color: #f8f8f8; 255 | border: 1px solid #cccccc; 256 | font-size: 13px; 257 | line-height: 19px; 258 | overflow: auto; 259 | padding: 6px 10px; 260 | border-radius: 3px; } 261 | 262 | .artcontent pre { 263 | background-color: transparent; 264 | border: 1px solid #cccccc; 265 | font-size: 13px; 266 | line-height: 19px; 267 | overflow: auto; 268 | padding: 6px 10px; 269 | border-radius: 3px; } 270 | .artcontent pre code, pre tt { 271 | background-color: transparent; 272 | border: none; } 273 | 274 | .artcontent sup { 275 | font-size: 0.83em; 276 | vertical-align: super; 277 | line-height: 0; 278 | } 279 | 280 | .artcontent code { 281 | white-space: pre-wrap; 282 | word-break: break-all; 283 | /*display: block;*/ 284 | } -------------------------------------------------------------------------------- /static/layui/lay/modules/layedit.js: -------------------------------------------------------------------------------- 1 | /** layui-v1.0.9_rls MIT License By http://www.layui.com */ 2 | ;layui.define(["layer","form"],function(t){"use strict";var e=layui.jquery,i=layui.layer,a=layui.form(),l=(layui.hint(),layui.device()),n="layedit",o="layui-show",r="layui-disabled",s=function(){var t=this;t.index=0,t.config={tool:["strong","italic","underline","del","|","left","center","right","|","link","unlink","face","image"],hideTool:[],height:280}};s.prototype.set=function(t){var i=this;return e.extend(!0,i.config,t),i},s.prototype.on=function(t,e){return layui.onevent(n,t,e)},s.prototype.build=function(t,i){i=i||{};var a=this,n=a.config,r="layui-layedit",s=e("#"+t),u="LAY_layedit_"+ ++a.index,d=s.next("."+r),y=e.extend({},n,i),f=function(){var t=[],e={};return layui.each(y.hideTool,function(t,i){e[i]=!0}),layui.each(y.tool,function(i,a){C[a]&&!e[a]&&t.push(C[a])}),t.join("")}(),m=e(['
    ','
    '+f+"
    ",'
    ','',"
    ","
    "].join(""));return l.ie&&l.ie<8?s.removeClass("layui-hide").addClass(o):(d[0]&&d.remove(),c.call(a,m,s[0],y),s.addClass("layui-hide").after(m),a.index)},s.prototype.getContent=function(t){var e=u(t);if(e[0])return d(e[0].document.body.innerHTML)},s.prototype.getText=function(t){var i=u(t);if(i[0])return e(i[0].document.body).text()},s.prototype.sync=function(t){var i=u(t);if(i[0]){var a=e("#"+i[1].attr("textarea"));a.val(d(i[0].document.body.innerHTML))}},s.prototype.getSelection=function(t){var e=u(t);if(e[0]){var i=m(e[0].document);return document.selection?i.text:i.toString()}};var c=function(t,i,a){var l=this,n=t.find("iframe");n.css({height:a.height}).on("load",function(){var o=n.contents(),r=n.prop("contentWindow"),s=o.find("head"),c=e([""].join("")),u=o.find("body");s.append(c),u.attr("contenteditable","true").css({"min-height":a.height}).html(i.value||""),y.apply(l,[r,n,i,a]),g.call(l,r,t,a)})},u=function(t){var i=e("#LAY_layedit_"+t),a=i.prop("contentWindow");return[a,i]},d=function(t){return 8==l.ie&&(t=t.replace(/<.+>/g,function(t){return t.toLowerCase()})),t},y=function(t,a,n,o){var r=t.document,s=e(r.body);s.on("keydown",function(t){var e=t.keyCode;if(13===e){var a=m(r),l=p(a),n=l.parentNode;if("pre"===n.tagName.toLowerCase()){if(t.shiftKey)return;return i.msg("请暂时用shift+enter"),!1}r.execCommand("formatBlock",!1,"

    ")}}),e(n).parents("form").on("submit",function(){var t=s.html();8==l.ie&&(t=t.replace(/<.+>/g,function(t){return t.toLowerCase()})),n.value=t}),s.on("paste",function(e){r.execCommand("formatBlock",!1,"

    "),setTimeout(function(){f.call(t,s),n.value=s.html()},100)})},f=function(t){var i=this;i.document;t.find("*[style]").each(function(){var t=this.style.textAlign;this.removeAttribute("style"),e(this).css({"text-align":t||""})}),t.find("table").addClass("layui-table"),t.find("script,link").remove()},m=function(t){return t.selection?t.selection.createRange():t.getSelection().getRangeAt(0)},p=function(t){return t.endContainer||t.parentElement().childNodes[0]},v=function(t,i,a){var l=this.document,n=document.createElement(t);for(var o in i)n.setAttribute(o,i[o]);if(n.removeAttribute("text"),l.selection){var r=a.text||i.text;if("a"===t&&!r)return;r&&(n.innerHTML=r),a.pasteHTML(e(n).prop("outerHTML")),a.select()}else{var r=a.toString()||i.text;if("a"===t&&!r)return;r&&(n.innerHTML=r),a.deleteContents(),a.insertNode(n)}},h=function(t,i){var a=this.document,l="layedit-tool-active",n=p(m(a)),o=function(e){return t.find(".layedit-tool-"+e)};i&&i[i.hasClass(l)?"removeClass":"addClass"](l),t.find(">i").removeClass(l),o("unlink").addClass(r),e(n).parents().each(function(){var t=this.tagName.toLowerCase(),e=this.style.textAlign;"b"!==t&&"strong"!==t||o("b").addClass(l),"i"!==t&&"em"!==t||o("i").addClass(l),"u"===t&&o("u").addClass(l),"strike"===t&&o("d").addClass(l),"p"===t&&("center"===e?o("center").addClass(l):"right"===e?o("right").addClass(l):o("left").addClass(l)),"a"===t&&(o("link").addClass(l),o("unlink").removeClass(r))})},g=function(t,a,l){var n=t.document,o=e(n.body),s={link:function(i){var a=p(i),l=e(a).parent();b.call(o,{href:l.attr("href"),target:l.attr("target")},function(e){var a=l[0];"A"===a.tagName?a.href=e.url:v.call(t,"a",{target:e.target,href:e.url,text:e.url},i)})},unlink:function(t){n.execCommand("unlink")},face:function(e){x.call(this,function(i){v.call(t,"img",{src:i.src,alt:i.alt},e)})},image:function(a){var n=this;layui.use("upload",function(o){var r=l.uploadImage||{};o({url:r.url,method:r.type,elem:e(n).find("input")[0],unwrap:!0,success:function(e){0==e.code?(e.data=e.data||{},v.call(t,"img",{src:e.data.src,alt:e.data.title},a)):i.msg(e.msg||"上传失败")}})})},code:function(e){k.call(o,function(i){v.call(t,"pre",{text:i.code,"lay-lang":i.lang},e)})},help:function(){i.open({type:2,title:"帮助",area:["600px","380px"],shadeClose:!0,shade:.1,skin:"layui-layer-msg",content:["http://www.layui.com/about/layedit/help.html","no"]})}},c=a.find(".layui-layedit-tool"),u=function(){var i=e(this),a=i.attr("layedit-event"),l=i.attr("lay-command");if(!i.hasClass(r)){o.focus();var u=m(n);u.commonAncestorContainer;l?(n.execCommand(l),/justifyLeft|justifyCenter|justifyRight/.test(l)&&n.execCommand("formatBlock",!1,"

    "),setTimeout(function(){o.focus()},10)):s[a]&&s[a].call(this,u),h.call(t,c,i)}},d=/image/;c.find(">i").on("mousedown",function(){var t=e(this),i=t.attr("layedit-event");d.test(i)||u.call(this)}).on("click",function(){var t=e(this),i=t.attr("layedit-event");d.test(i)&&u.call(this)}),o.on("click",function(){h.call(t,c),i.close(x.index)})},b=function(t,e){var l=this,n=i.open({type:1,id:"LAY_layedit_link",area:"350px",shade:.05,shadeClose:!0,moveType:1,title:"超链接",skin:"layui-layer-msg",content:['

      ','
    • ','','
      ','',"
      ","
    • ",'
    • ','','
      ','",'","
      ","
    • ",'
    • ','','',"
    • ","
    "].join(""),success:function(t,n){var o="submit(layedit-link-yes)";a.render("radio"),t.find(".layui-btn-primary").on("click",function(){i.close(n),l.focus()}),a.on(o,function(t){i.close(b.index),e&&e(t.field)})}});b.index=n},x=function(t){var a=function(){var t=["[微笑]","[嘻嘻]","[哈哈]","[可爱]","[可怜]","[挖鼻]","[吃惊]","[害羞]","[挤眼]","[闭嘴]","[鄙视]","[爱你]","[泪]","[偷笑]","[亲亲]","[生病]","[太开心]","[白眼]","[右哼哼]","[左哼哼]","[嘘]","[衰]","[委屈]","[吐]","[哈欠]","[抱抱]","[怒]","[疑问]","[馋嘴]","[拜拜]","[思考]","[汗]","[困]","[睡]","[钱]","[失望]","[酷]","[色]","[哼]","[鼓掌]","[晕]","[悲伤]","[抓狂]","[黑线]","[阴险]","[怒骂]","[互粉]","[心]","[伤心]","[猪头]","[熊猫]","[兔子]","[ok]","[耶]","[good]","[NO]","[赞]","[来]","[弱]","[草泥马]","[神马]","[囧]","[浮云]","[给力]","[围观]","[威武]","[奥特曼]","[礼物]","[钟]","[话筒]","[蜡烛]","[蛋糕]"],e={};return layui.each(t,function(t,i){e[i]=layui.cache.dir+"images/face/"+t+".gif"}),e}();return x.hide=x.hide||function(t){"face"!==e(t.target).attr("layedit-event")&&i.close(x.index)},x.index=i.tips(function(){var t=[];return layui.each(a,function(e,i){t.push('
  • '+e+'
  • ')}),'
      '+t.join("")+"
    "}(),this,{tips:1,time:0,skin:"layui-box layui-util-face",maxWidth:500,success:function(l,n){l.css({marginTop:-4,marginLeft:-10}).find(".layui-clear>li").on("click",function(){t&&t({src:a[this.title],alt:this.title}),i.close(n)}),e(document).off("click",x.hide).on("click",x.hide)}})},k=function(t){var e=this,l=i.open({type:1,id:"LAY_layedit_code",area:"550px",shade:.05,shadeClose:!0,moveType:1,title:"插入代码",skin:"layui-layer-msg",content:['
      ','
    • ','','
      ','","
      ","
    • ",'
    • ','','
      ','',"
      ","
    • ",'
    • ','','',"
    • ","
    "].join(""),success:function(l,n){var o="submit(layedit-code-yes)";a.render("select"),l.find(".layui-btn-primary").on("click",function(){i.close(n),e.focus()}),a.on(o,function(e){i.close(k.index),t&&t(e.field)})}});k.index=l},C={html:'',strong:'',italic:'',underline:'',del:'',"|":'',left:'',center:'',right:'',link:'',unlink:'',face:'',image:'',code:'',help:''},w=new s;t(n,w)}); -------------------------------------------------------------------------------- /static/layui/lay/modules/laydate.js: -------------------------------------------------------------------------------- 1 | /** layui-v1.0.9_rls MIT License By http://www.layui.com */ 2 | ;layui.define(function(e){"use strict";var t=window,a={path:"",skin:"default",format:"YYYY-MM-DD",min:"1900-01-01 00:00:00",max:"2099-12-31 23:59:59",isv:!1,init:!0},n={},s=document,i="createElement",o="getElementById",l="getElementsByTagName",d=["laydate_box","laydate_void","laydate_click","LayDateSkin","skins/","/laydate.css"];t.laydate=function(e){return e=e||{},n.run(e),laydate},laydate.v="1.1",n.trim=function(e){return e=e||"",e.replace(/^\s|\s$/g,"").replace(/\s+/g," ")},n.digit=function(e){return e<10?"0"+(0|e):e},n.stopmp=function(e){return e=e||t.event,e.stopPropagation?e.stopPropagation():e.cancelBubble=!0,this},n.each=function(e,t){for(var a=0,n=e.length;an.maxs[0]?s=["y",1]:e>=n.mins[0]&&e<=n.maxs[0]&&(e==n.mins[0]&&(tn.maxs[1]?s=["m",1]:t==n.maxs[1]&&a>n.maxs[2]&&(s=["d",1]))),s},n.timeVoid=function(e,t){if(n.ymd[1]+1==n.mins[1]&&n.ymd[2]==n.mins[2]){if(0===t&&en.maxs[3])return 1;if(1===t&&e>n.maxs[4])return 1;if(2===t&&e>n.maxs[5])return 1}if(e>(t?59:23))return 1},n.check=function(){var e=n.options.format.replace(/YYYY|MM|DD|hh|mm|ss/g,"\\d+\\").replace(/\\$/g,""),t=new RegExp(e),a=n.elem[d.elemv],s=a.match(/\d+/g)||[],i=n.checkVoid(s[0],s[1],s[2]);if(""!==a.replace(/\s/g,"")){if(!t.test(a))return n.elem[d.elemv]="",n.msg("日期不符合格式,请重新选择。"),1;if(i[0])return n.elem[d.elemv]="",n.msg("日期不在有效期内,请重新选择。"),1;i.value=n.elem[d.elemv].match(t).join(),s=i.value.match(/\d+/g),s[1]<1?(s[1]=1,i.auto=1):s[1]>12?(s[1]=12,i.auto=1):s[1].length<2&&(i.auto=1),s[2]<1?(s[2]=1,i.auto=1):s[2]>n.months[(0|s[1])-1]?(s[2]=31,i.auto=1):s[2].length<2&&(i.auto=1),s.length>3&&(n.timeVoid(s[3],0)&&(i.auto=1),n.timeVoid(s[4],1)&&(i.auto=1),n.timeVoid(s[5],2)&&(i.auto=1)),i.auto?n.creation([s[0],0|s[1],0|s[2]],1):i.value!==n.elem[d.elemv]&&(n.elem[d.elemv]=i.value)}},n.months=[31,null,31,30,31,30,31,31,30,31,30,31],n.viewDate=function(e,t,a){var s=(n.query,{}),i=new Date;e<(0|n.mins[0])&&(e=0|n.mins[0]),e>(0|n.maxs[0])&&(e=0|n.maxs[0]),i.setFullYear(e,t,a),s.ymd=[i.getFullYear(),i.getMonth(),i.getDate()],n.months[1]=n.isleap(s.ymd[0])?29:28,i.setFullYear(s.ymd[0],s.ymd[1],1),s.FDay=i.getDay(),s.PDay=n.months[0===t?11:t-1]-s.FDay+1,s.NDay=1,n.each(d.tds,function(e,t){var a,i=s.ymd[0],o=s.ymd[1]+1;t.className="",e=s.FDay&&e'+e+"年":'
  • '+(e-7+t)+"年
  • "}),t("#laydate_ys").innerHTML=a,n.each(t("#laydate_ys li"),function(e,t){"y"===n.checkVoid(t.getAttribute("y"))[0]?n.addClass(t,d[1]):n.on(t,"click",function(e){n.stopmp(e).reshow(),n.viewDate(0|this.getAttribute("y"),n.ymd[1],n.ymd[2])})})},n.initDate=function(){var e=(n.query,new Date),t=n.elem[d.elemv].match(/\d+/g)||[];t.length<3&&(t=n.options.start.match(/\d+/g)||[],t.length<3&&(t=[e.getFullYear(),e.getMonth()+1,e.getDate()])),n.inymd=t,n.viewDate(t[0],t[1]-1,t[2])},n.iswrite=function(){var e=n.query,t={time:e("#laydate_hms")};n.shde(t.time,!n.options.istime),n.shde(d.oclear,!("isclear"in n.options?n.options.isclear:1)),n.shde(d.otoday,!("istoday"in n.options?n.options.istoday:1)),n.shde(d.ok,!("issure"in n.options?n.options.issure:1))},n.orien=function(e,t){var a,s=n.elem.getBoundingClientRect();e.style.left=s.left+(t?0:n.scroll(1))+"px",a=s.bottom+e.offsetHeight/1.5<=n.winarea()?s.bottom-1:s.top>e.offsetHeight/1.5?s.top-e.offsetHeight+1:n.winarea()-e.offsetHeight,e.style.top=Math.max(a+(t?0:n.scroll()),1)+"px"},n.follow=function(e){n.options.fixed?(e.style.position="fixed",n.orien(e,1)):(e.style.position="absolute",n.orien(e))},n.viewtb=function(){var e,t=[],a=["日","一","二","三","四","五","六"],o={},d=s[i]("table"),r=s[i]("thead");return r.appendChild(s[i]("tr")),o.creath=function(e){var t=s[i]("th");t.innerHTML=a[e],r[l]("tr")[0].appendChild(t),t=null},n.each(new Array(6),function(a){t.push([]),e=d.insertRow(0),n.each(new Array(7),function(n){t[a][n]=0,0===a&&o.creath(n),e.insertCell(n)})}),d.insertBefore(r,d.children[0]),d.id=d.className="laydate_table",e=t=null,d.outerHTML.toLowerCase()}(),n.view=function(e,t){var o,l=n.query,r={};t=t||e,n.elem=e,n.options=t,n.options.format||(n.options.format=a.format),n.options.start=n.options.start||"",n.mm=r.mm=[n.options.min||a.min,n.options.max||a.max],n.mins=r.mm[0].match(/\d+/g),n.maxs=r.mm[1].match(/\d+/g),n.box?n.shde(n.box):(o=s[i]("div"),o.id=d[0],o.className=d[0],o.style.cssText="position: absolute;",o.setAttribute("name","laydate-v"+laydate.v),o.innerHTML=r.html='
      '+function(){var e="";return n.each(new Array(12),function(t){e+=''+n.digit(t+1)+"月"}),e}()+"
      "+n.viewtb+'",s.body.appendChild(o),n.box=l("#"+d[0]),n.events(),o=null),n.follow(n.box),t.zIndex?n.box.style.zIndex=t.zIndex:n.removeCssAttr(n.box,"z-index"),n.stopMosup("click",n.box),n.initDate(),n.iswrite(),n.check()},n.reshow=function(){return n.each(n.query("#"+d[0]+" .laydate_show"),function(e,t){n.removeClass(t,"laydate_show")}),this},n.close=function(){n.reshow(),n.shde(n.query("#"+d[0]),1),n.elem=null},n.parse=function(e,t,s){return e=e.concat(t),s=s||(n.options?n.options.format:a.format),s.replace(/YYYY|MM|DD|hh|mm|ss/g,function(t,a){return e.index=0|++e.index,n.digit(e[e.index])})},n.creation=function(e,t){var a=(n.query,n.hmsin),s=n.parse(e,[a[0].value,a[1].value,a[2].value]);n.elem[d.elemv]=s,t||(n.close(),"function"==typeof n.options.choose&&n.options.choose(s))},n.events=function(){var e=n.query,a={box:"#"+d[0]};n.addClass(s.body,"laydate_body"),d.tds=e("#laydate_table td"),d.mms=e("#laydate_ms span"),d.year=e("#laydate_y"),d.month=e("#laydate_m"),n.each(e(a.box+" .laydate_ym"),function(e,t){n.on(t,"click",function(t){n.stopmp(t).reshow(),n.addClass(this[l]("div")[0],"laydate_show"),e||(a.YY=parseInt(d.year.value),n.viewYears(a.YY))})}),n.on(e(a.box),"click",function(){n.reshow()}),a.tabYear=function(e){0===e?n.ymd[0]--:1===e?n.ymd[0]++:2===e?a.YY-=14:a.YY+=14,e<2?(n.viewDate(n.ymd[0],n.ymd[1],n.ymd[2]),n.reshow()):n.viewYears(a.YY)},n.each(e("#laydate_YY .laydate_tab"),function(e,t){n.on(t,"click",function(t){n.stopmp(t),a.tabYear(e)})}),a.tabMonth=function(e){e?(n.ymd[1]++,12===n.ymd[1]&&(n.ymd[0]++,n.ymd[1]=0)):(n.ymd[1]--,n.ymd[1]===-1&&(n.ymd[0]--,n.ymd[1]=11)),n.viewDate(n.ymd[0],n.ymd[1],n.ymd[2])},n.each(e("#laydate_MM .laydate_tab"),function(e,t){n.on(t,"click",function(t){n.stopmp(t).reshow(),a.tabMonth(e)})}),n.each(e("#laydate_ms span"),function(e,t){n.on(t,"click",function(e){n.stopmp(e).reshow(),n.hasClass(this,d[1])||n.viewDate(n.ymd[0],0|this.getAttribute("m"),n.ymd[2])})}),n.each(e("#laydate_table td"),function(e,t){n.on(t,"click",function(e){n.hasClass(this,d[1])||(n.stopmp(e),n.creation([0|this.getAttribute("y"),0|this.getAttribute("m"),0|this.getAttribute("d")]))})}),d.oclear=e("#laydate_clear"),n.on(d.oclear,"click",function(){n.elem[d.elemv]="",n.close()}),d.otoday=e("#laydate_today"),n.on(d.otoday,"click",function(){var e=new Date;n.creation([e.getFullYear(),e.getMonth()+1,e.getDate()])}),d.ok=e("#laydate_ok"),n.on(d.ok,"click",function(){n.valid&&n.creation([n.ymd[0],n.ymd[1]+1,n.ymd[2]])}),a.times=e("#laydate_time"),n.hmsin=a.hmsin=e("#laydate_hms input"),a.hmss=["小时","分钟","秒数"],a.hmsarr=[],n.msg=function(t,s){var i='
      '+(s||"提示")+"×
      ";"string"==typeof t?(i+="

      "+t+"

      ",n.shde(e("#"+d[0])),n.removeClass(a.times,"laydate_time1").addClass(a.times,"laydate_msg")):(a.hmsarr[t]?i=a.hmsarr[t]:(i+='
      ',n.each(new Array(0===t?24:60),function(e){i+=""+e+""}),i+="
      ",a.hmsarr[t]=i),n.removeClass(a.times,"laydate_msg"),n[0===t?"removeClass":"addClass"](a.times,"laydate_time1")),n.addClass(a.times,"laydate_show"),a.times.innerHTML=i},a.hmson=function(t,a){var s=e("#laydate_hmsno span"),i=n.valid?null:1;n.each(s,function(e,s){i?n.addClass(s,d[1]):n.timeVoid(e,a)?n.addClass(s,d[1]):n.on(s,"click",function(e){n.hasClass(this,d[1])||(t.value=n.digit(0|this.innerHTML))})}),n.addClass(s[0|t.value],"laydate_click")},n.each(a.hmsin,function(e,t){n.on(t,"click",function(t){n.stopmp(t).reshow(),n.msg(e,a.hmss[e]),a.hmson(this,e)})}),n.on(s,"mouseup",function(){var t=e("#"+d[0]);t&&"none"!==t.style.display&&(n.check()||n.close())}).on(s,"keydown",function(e){e=e||t.event;var a=e.keyCode;13===a&&n.elem&&n.creation([n.ymd[0],n.ymd[1]+1,n.ymd[2]])})},laydate.reset=function(){n.box&&n.elem&&n.follow(n.box)},laydate.now=function(e,t){var a=new Date(0|e?function(e){return e<864e5?+new Date+864e5*e:e}(parseInt(e)):+new Date);return n.parse([a.getFullYear(),a.getMonth()+1,a.getDate()],[a.getHours(),a.getMinutes(),a.getSeconds()],t)},layui.addcss("modules/laydate/laydate.css",function(){},"laydatecss"),e("laydate",laydate)}); -------------------------------------------------------------------------------- /static/layui/css/modules/layer/default/layer.css: -------------------------------------------------------------------------------- 1 | /** layui-v1.0.9_rls MIT License By http://www.layui.com */ 2 | .layui-layer-imgbar,.layui-layer-imgtit a,.layui-layer-tab .layui-layer-title span,.layui-layer-title{text-overflow:ellipsis;white-space:nowrap}*html{background-image:url(about:blank);background-attachment:fixed}html #layuicss-skinlayercss{display:none;position:absolute;width:1989px}.layui-layer,.layui-layer-shade{position:fixed;_position:absolute;pointer-events:auto}.layui-layer-shade{top:0;left:0;width:100%;height:100%;_height:expression(document.body.offsetHeight+"px")}.layui-layer{-webkit-overflow-scrolling:touch;top:150px;left:0;margin:0;padding:0;background-color:#fff;-webkit-background-clip:content;box-shadow:1px 1px 50px rgba(0,0,0,.3)}.layui-layer-close{position:absolute}.layui-layer-content{position:relative}.layui-layer-border{border:1px solid #B2B2B2;border:1px solid rgba(0,0,0,.1);box-shadow:1px 1px 5px rgba(0,0,0,.2)}.layui-layer-load{background:url(loading-1.gif) center center no-repeat #eee}.layui-layer-ico{background:url(icon.png) no-repeat}.layui-layer-btn a,.layui-layer-dialog .layui-layer-ico,.layui-layer-setwin a{display:inline-block;*display:inline;*zoom:1;vertical-align:top}.layui-layer-move{display:none;position:fixed;*position:absolute;left:0;top:0;width:100%;height:100%;cursor:move;opacity:0;filter:alpha(opacity=0);background-color:#fff;z-index:2147483647}.layui-layer-resize{position:absolute;width:15px;height:15px;right:0;bottom:0;cursor:se-resize}.layui-layer{border-radius:2px;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.3s;animation-duration:.3s}@-webkit-keyframes layer-bounceIn{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes layer-bounceIn{0%{opacity:0;-webkit-transform:scale(.5);-ms-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.layer-anim{-webkit-animation-name:layer-bounceIn;animation-name:layer-bounceIn}@-webkit-keyframes layer-zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes layer-zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);-ms-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);-ms-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.layer-anim-01{-webkit-animation-name:layer-zoomInDown;animation-name:layer-zoomInDown}@-webkit-keyframes layer-fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes layer-fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.layer-anim-02{-webkit-animation-name:layer-fadeInUpBig;animation-name:layer-fadeInUpBig}@-webkit-keyframes layer-zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes layer-zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);-ms-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);-ms-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.layer-anim-03{-webkit-animation-name:layer-zoomInLeft;animation-name:layer-zoomInLeft}@-webkit-keyframes layer-rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0) rotate(0);transform:translateX(0) rotate(0)}}@keyframes layer-rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);-ms-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0) rotate(0);-ms-transform:translateX(0) rotate(0);transform:translateX(0) rotate(0)}}.layer-anim-04{-webkit-animation-name:layer-rollIn;animation-name:layer-rollIn}@keyframes layer-fadeIn{0%{opacity:0}100%{opacity:1}}.layer-anim-05{-webkit-animation-name:layer-fadeIn;animation-name:layer-fadeIn}@-webkit-keyframes layer-shake{0%,100%{-webkit-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);transform:translateX(10px)}}@keyframes layer-shake{0%,100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}}.layer-anim-06{-webkit-animation-name:layer-shake;animation-name:layer-shake}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.layui-layer-title{padding:0 80px 0 20px;height:42px;line-height:42px;border-bottom:1px solid #eee;font-size:14px;color:#333;overflow:hidden;background-color:#F8F8F8;border-radius:2px 2px 0 0}.layui-layer-setwin{position:absolute;right:15px;*right:0;top:15px;font-size:0;line-height:initial}.layui-layer-setwin a{position:relative;width:16px;height:16px;margin-left:10px;font-size:12px;_overflow:hidden}.layui-layer-setwin .layui-layer-min cite{position:absolute;width:14px;height:2px;left:0;top:50%;margin-top:-1px;background-color:#2E2D3C;cursor:pointer;_overflow:hidden}.layui-layer-setwin .layui-layer-min:hover cite{background-color:#2D93CA}.layui-layer-setwin .layui-layer-max{background-position:-32px -40px}.layui-layer-setwin .layui-layer-max:hover{background-position:-16px -40px}.layui-layer-setwin .layui-layer-maxmin{background-position:-65px -40px}.layui-layer-setwin .layui-layer-maxmin:hover{background-position:-49px -40px}.layui-layer-setwin .layui-layer-close1{background-position:1px -40px;cursor:pointer}.layui-layer-setwin .layui-layer-close1:hover{opacity:.7}.layui-layer-setwin .layui-layer-close2{position:absolute;right:-28px;top:-28px;width:30px;height:30px;margin-left:0;background-position:-149px -31px;*right:-18px;_display:none}.layui-layer-setwin .layui-layer-close2:hover{background-position:-180px -31px}.layui-layer-btn{text-align:right;padding:0 10px 12px;pointer-events:auto;user-select:none;-webkit-user-select:none}.layui-layer-btn a{height:28px;line-height:28px;margin:6px 6px 0;padding:0 15px;border:1px solid #dedede;background-color:#f1f1f1;color:#333;border-radius:2px;font-weight:400;cursor:pointer;text-decoration:none}.layui-layer-btn a:hover{opacity:.9;text-decoration:none}.layui-layer-btn a:active{opacity:.8}.layui-layer-btn .layui-layer-btn0{border-color:#4898d5;background-color:#2e8ded;color:#fff}.layui-layer-btn-l{text-align:left}.layui-layer-btn-c{text-align:center}.layui-layer-dialog{min-width:260px}.layui-layer-dialog .layui-layer-content{position:relative;padding:20px;line-height:24px;word-break:break-all;overflow:hidden;font-size:14px;overflow-x:hidden;overflow-y:auto}.layui-layer-dialog .layui-layer-content .layui-layer-ico{position:absolute;top:16px;left:15px;_left:-40px;width:30px;height:30px}.layui-layer-ico1{background-position:-30px 0}.layui-layer-ico2{background-position:-60px 0}.layui-layer-ico3{background-position:-90px 0}.layui-layer-ico4{background-position:-120px 0}.layui-layer-ico5{background-position:-150px 0}.layui-layer-ico6{background-position:-180px 0}.layui-layer-rim{border:6px solid #8D8D8D;border:6px solid rgba(0,0,0,.3);border-radius:5px;box-shadow:none}.layui-layer-msg{min-width:180px;border:1px solid #D3D4D3;box-shadow:none}.layui-layer-hui{min-width:100px;background-color:#000;filter:alpha(opacity=60);background-color:rgba(0,0,0,.6);color:#fff;border:none}.layui-layer-hui .layui-layer-content{padding:12px 25px;text-align:center}.layui-layer-dialog .layui-layer-padding{padding:20px 20px 20px 55px;text-align:left}.layui-layer-page .layui-layer-content{position:relative;overflow:auto}.layui-layer-iframe .layui-layer-btn,.layui-layer-page .layui-layer-btn{padding-top:10px}.layui-layer-nobg{background:0 0}.layui-layer-iframe iframe{display:block;width:100%}.layui-layer-loading{border-radius:100%;background:0 0;box-shadow:none;border:none}.layui-layer-loading .layui-layer-content{width:60px;height:24px;background:url(loading-0.gif) no-repeat}.layui-layer-loading .layui-layer-loading1{width:37px;height:37px;background:url(loading-1.gif) no-repeat}.layui-layer-ico16,.layui-layer-loading .layui-layer-loading2{width:32px;height:32px;background:url(loading-2.gif) no-repeat}.layui-layer-tips{background:0 0;box-shadow:none;border:none}.layui-layer-tips .layui-layer-content{position:relative;line-height:22px;min-width:12px;padding:5px 10px;font-size:12px;_float:left;border-radius:2px;box-shadow:1px 1px 3px rgba(0,0,0,.2);background-color:#000;color:#fff}.layui-layer-tips .layui-layer-close{right:-2px;top:-1px}.layui-layer-tips i.layui-layer-TipsG{position:absolute;width:0;height:0;border-width:8px;border-color:transparent;border-style:dashed;*overflow:hidden}.layui-layer-tips i.layui-layer-TipsB,.layui-layer-tips i.layui-layer-TipsT{left:5px;border-right-style:solid;border-right-color:#000}.layui-layer-tips i.layui-layer-TipsT{bottom:-8px}.layui-layer-tips i.layui-layer-TipsB{top:-8px}.layui-layer-tips i.layui-layer-TipsL,.layui-layer-tips i.layui-layer-TipsR{top:1px;border-bottom-style:solid;border-bottom-color:#000}.layui-layer-tips i.layui-layer-TipsR{left:-8px}.layui-layer-tips i.layui-layer-TipsL{right:-8px}.layui-layer-lan[type=dialog]{min-width:280px}.layui-layer-lan .layui-layer-title{background:#4476A7;color:#fff;border:none}.layui-layer-lan .layui-layer-btn{padding:5px 10px 10px;text-align:right;border-top:1px solid #E9E7E7}.layui-layer-lan .layui-layer-btn a{background:#BBB5B5;border:none}.layui-layer-lan .layui-layer-btn .layui-layer-btn1{background:#C9C5C5}.layui-layer-molv .layui-layer-title{background:#009f95;color:#fff;border:none}.layui-layer-molv .layui-layer-btn a{background:#009f95}.layui-layer-molv .layui-layer-btn .layui-layer-btn1{background:#92B8B1}.layui-layer-iconext{background:url(icon-ext.png) no-repeat}.layui-layer-prompt .layui-layer-input{display:block;width:220px;height:30px;margin:0 auto;line-height:30px;padding:0 5px;border:1px solid #ccc;box-shadow:1px 1px 5px rgba(0,0,0,.1) inset;color:#333}.layui-layer-prompt textarea.layui-layer-input{width:300px;height:100px;line-height:20px}.layui-layer-prompt .layui-layer-content{padding:20px}.layui-layer-prompt .layui-layer-btn{padding-top:0}.layui-layer-tab{box-shadow:1px 1px 50px rgba(0,0,0,.4)}.layui-layer-tab .layui-layer-title{padding-left:0;border-bottom:1px solid #ccc;background-color:#eee;overflow:visible}.layui-layer-tab .layui-layer-title span{position:relative;float:left;min-width:80px;max-width:260px;padding:0 20px;text-align:center;cursor:default;overflow:hidden}.layui-layer-tab .layui-layer-title span.layui-layer-tabnow{height:43px;border-left:1px solid #ccc;border-right:1px solid #ccc;background-color:#fff;z-index:10}.layui-layer-tab .layui-layer-title span:first-child{border-left:none}.layui-layer-tabmain{line-height:24px;clear:both}.layui-layer-tabmain .layui-layer-tabli{display:none}.layui-layer-tabmain .layui-layer-tabli.xubox_tab_layer{display:block}.xubox_tabclose{position:absolute;right:10px;top:5px;cursor:pointer}.layui-layer-photos{-webkit-animation-duration:.8s;animation-duration:.8s}.layui-layer-photos .layui-layer-content{overflow:hidden;text-align:center}.layui-layer-photos .layui-layer-phimg img{position:relative;width:100%;display:inline-block;*display:inline;*zoom:1;vertical-align:top}.layui-layer-imgbar,.layui-layer-imguide{display:none}.layui-layer-imgnext,.layui-layer-imgprev{position:absolute;top:50%;width:27px;_width:44px;height:44px;margin-top:-22px;outline:0;blr:expression(this.onFocus=this.blur())}.layui-layer-imgprev{left:10px;background-position:-5px -5px;_background-position:-70px -5px}.layui-layer-imgprev:hover{background-position:-33px -5px;_background-position:-120px -5px}.layui-layer-imgnext{right:10px;_right:8px;background-position:-5px -50px;_background-position:-70px -50px}.layui-layer-imgnext:hover{background-position:-33px -50px;_background-position:-120px -50px}.layui-layer-imgbar{position:absolute;left:0;bottom:0;width:100%;height:32px;line-height:32px;background-color:rgba(0,0,0,.8);background-color:#000\9;filter:Alpha(opacity=80);color:#fff;overflow:hidden;font-size:0}.layui-layer-imgtit *{display:inline-block;*display:inline;*zoom:1;vertical-align:top;font-size:12px}.layui-layer-imgtit a{max-width:65%;overflow:hidden;color:#fff}.layui-layer-imgtit a:hover{color:#fff;text-decoration:underline}.layui-layer-imgtit em{padding-left:10px;font-style:normal}@-webkit-keyframes layer-bounceOut{100%{opacity:0;-webkit-transform:scale(.7);transform:scale(.7)}30%{-webkit-transform:scale(1.05);transform:scale(1.05)}0%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes layer-bounceOut{100%{opacity:0;-webkit-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}30%{-webkit-transform:scale(1.05);-ms-transform:scale(1.05);transform:scale(1.05)}0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.layer-anim-close{-webkit-animation-name:layer-bounceOut;animation-name:layer-bounceOut;-webkit-animation-duration:.2s;animation-duration:.2s}@media screen and (max-width:1100px){.layui-layer-iframe{overflow-y:auto;-webkit-overflow-scrolling:touch}} --------------------------------------------------------------------------------