// ==UserScript== // @name DMZJ漫画转为手机版链接 // @author Crab // @namespace DMZJManga@dmzj.com // @description DMZJ漫画更新页面链接转为手机版 // @include /https?:\/\/([^/]+?\.dmzj\.com\/|(?:i\.178\.com\/~sms\.cartoon\.cartoon(?:ListUid|NewList))).*/ // @compatible firefox 34+ // @compatible Chrome 45+ // @version 0.9.8 // @grant none // @downloadURL none // ==/UserScript== (function(){ if(top !== self && ['m.dmzj.com', 'v2.api.dmzj.com', 'manhua.dmzj.com/zt/module/'].some(url => new RegExp('^https?:\\/\\/' + url).test(location.href))){ return (function(){ addEventListener('message', function(event){ if(!event.data.nid.startsWith('dmzj_get_chapters') || !event.data.url || (new URL(event.data.url).host != location.host) ) return; var req = new XMLHttpRequest(); req.open('GET', event.data.url, true); req.onerror = req.onload = function () { event.data.response = this.responseText; top.postMessage(event.data, event.origin); }; req.send(); }); top.postMessage({nid: 'dmzj_get_chapters' + location.host}, '*'); })(); } var gUrl = (function(){ var rules = { update: /^https?:\/\/manhua\.dmzj\.com\/update\_\d+\.shtml$/, mobile: /^https?:\/\/m\.dmzj\.com\/view\/.+\.html([@?#&].+)?$/, mobileHome: /^https?:\/\/m\.dmzj\.com\/([^\/\.]+\.html)?(\?t=\d+#\d+)?$/, desktop: /^https?:\/\/manhua\.dmzj\.com\/.*$/, subscribe: /^https?:\/\/i\.dmzj\.com\/\/?subscribe.*$/, //record: /^https?:\/\/i\.dmzj\.com\/\/?record.*$/, //cartoonList: /cartoonListUid|cartoonNewList/g, //oldSubscribe: /^https?:\/\/user\.dmzj\.com\/.+$/, }; var url = location.href; for(var i in rules){ if(rules[i].test(url)){ rules = null; if(i === 'desktop' && location.pathname === '/') return 'deskHome'; return i; } } })(); var $$ = function(e){ return Array.from(document.querySelectorAll(e)); }; //console.log(gUrl); var _preventParentScrolling = function(target){ target.addEventListener('wheel', e => { if(e.deltaY < 0 ? target.scrollTop === 0 : target.scrollTop === target.scrollHeight - target.clientHeight ) e.preventDefault(); }); }; var _cE = function (name, attr, parent){ var e = document.createElement(name); attr = attr || {}; for (var i in attr) i == 'text' ? (e.textContent = attr[i]) : e.setAttribute(i, attr[i]); parent && (Array.isArray(parent) ? parent[0].insertBefore(e, parent.length == 2 ? parent[1] : parent[0].firstChild) : parent.appendChild(e)); return e; }; //动态转换链接 _cE('style', {text: ` @keyframes toMobileLink {from{opacity:.9}to{opacity:1}} .acg-content-text a[href$=shtml]:not([mbl])/*cartoonList*/ ,.pictext a[href$=shtml]:not([mbl])/*update*/ ,${'.cartoon_online_border,.cartoon_online_border_other, .adiv2hidden:last-child' .replace(/(?=,)|$/g, ' a[title][href$=shtml]:not([mbl])')}/*desktop*/ ,.c_space> a:not([mbl]) /*subscribe*/ ,#type_comics .adivhidden:last-child a[href$="shtml"]:not([mbl])/*subscribe 边栏*/ ,.autoHeight p:nth-child(2)> a[href$="shtml"]:not([mbl]) /*oldSubscribe*/ ,.tcaricature_block .adiv2hidden:last-child a[href$="shtml"]:not([mbl]), .read_mend_mr a[href$="shtml"]:not([mbl]), .icn-02_indexa[href$="shtml"]:not([mbl])/*deskHome*/ ,.history_des a[href*="shtml"]:not([mbl])/*record*/ ,.zxgxbox a[href$="shtml"]:not([mbl])/*tags 边栏*/ ,#bookOpen .book_num:not([mbl])/*顶部弹出面板*/ ,.middleright-right a[href$="shtml"]:not([mbl])/*排行榜页面*/ {animation:toMobileLink 1ms} a[mbl][style]{width:20px!important} /*首页*/ .icn-02_index a{padding-left:0!important} .top_list span{width:15px} .top_list a {width:140px} .top_list .num{margin-right:-5px!important} /*tags 边栏*/ .zxgxbox .tt_chapter{margin-left: 0px} .zxgxbox .numbig{padding:0} .zxgxbox .tt_comic {width: 74px} .book_l{margin-left:-20px!important} /*排行榜页面*/ .middleright-right .bikini li>a{padding:0!important} .middleright-right .bikini li>a+a{width:110px!important} `}, document.head); addEventListener('animationstart', e => { if(e.animationName !== 'toMobileLink') return; var a = e.target; if(!/\/\/manhua\./.test(a.href)) return; a.setAttribute('mbl', 1); var a1 = a.cloneNode(true); a1.textContent = '(#)'; a1.style.color = 'orange'; a.parentNode.insertBefore(a1, a); a.href = a.href.replace(/\/\/manhua([^\/]+)/,'//m$1/view').replace(/shtml$/, 'html'); }); if(gUrl == 'update'){ //漫画更新页面国漫灰色显示 var gm = []; $$('a.pictextst[href^="http\:\/\/www\.dmzj\.com\/"]').forEach(a => { var boxdiv = a.closest('.boxdiv1'); if(boxdiv){ gm.push(boxdiv); boxdiv.classList.add('filter'); } }); //将国漫排在最后 var boxs = $$('.newpic_bg, .newpic_bgno'); gm.length && $$('.boxdiv1').filter(m => { return gm.indexOf(m) == -1; }).concat(gm).forEach((m, i) => { boxs[Math.floor(i / 4)].appendChild(m); }); gm = boxs = null; _cE('style', {text: ` .newpic_bg::after, .newpic_bgno::after{ content: ''; display: block; clear: both; } .boxdiv1 .picborder { height:auto; } .boxdiv1.filter:not(:hover) .pictext, .boxdiv1.filter:not(:hover) .picborder { filter: grayscale(100%); } .boxdiv1.filter{ position: relative; overflow: hidden; } .boxdiv1.filter::after{ content:'国漫'; display: block; position: absolute; z-index: 1; color: white; font-size:16px; transform: rotate(-45deg); transform-origin:10px 65px; pointer-events: none; width: 100px; height: 50px; text-align: center; line-height: calc(100px - 1.5em); background: rgba(255, 165, 0, 0.7); } `}, document.head); }else if(gUrl == 'desktop'){ //被隐藏的漫画至少显示最新话 var mhContainer = $$('.cartoon_online_border')[0]; if(mhContainer && mhContainer.firstElementChild.localName == 'img'){ mhContainer.innerHTML = ''+ g_last_update +'

正在加载被屏蔽的地址...

'; var iframe = _cE('iframe', {style: 'display:none', src: 'http://v2.api.dmzj.com/'}, document.body); addEventListener('message', function(e){ if(e.data.nid !== 'dmzj_get_chapters'+'v2.api.dmzj.com') return; if(!e.data.response) return e.source.postMessage({nid: e.data.nid, url: 'http://v2.api.dmzj.com/comic/'+ g_comic_id + '.json'}, e.origin); mhContainer.innerHTML = ''; var isFolderURL = location.pathname.endsWith('/'); JSON.parse(e.data.response).chapters.forEach(function(chapters){ _cE('h3', {text: chapters.title}, mhContainer); var ul = _cE('ul', null, mhContainer); chapters.data.forEach(function(c){ _cE('li', null, ul).innerHTML = ''+ c.chapter_title +''; }); _cE('div', {class: 'clearfix'}, mhContainer); }); removeEventListener('message', arguments.callee); iframe.remove(); }); } }else if(gUrl == 'subscribe'){ _cE('style', {text: ` .dy_r p em.c_space{ overflow:auto!important; width:auto!important; display: inline; white-space: normal; } .dy_r p{height:auto!important;} `}, document.head); var my_subscribe_id = $$('#my_subscribe_id')[0]; var addObserver = function(){ my_subscribe_id && (new MutationObserver(function(){ //未看新漫画总排前 this.disconnect(); $$('.c_space + .new').reverse().forEach(function(icon){ var li = icon.parentNode.parentNode.parentNode; li.parentNode.insertBefore(li, li.parentNode.firstElementChild); }); addObserver(); })).observe(my_subscribe_id, {childList: true}); }; addObserver(); }else if(gUrl == 'mobile'){ _cE('style', {text: ` html, body{min-height:100vh!important; background:#222!important} body .UnderPage .subHeader {background-color: rgba(255, 255, 255, 0.68);} .UnderPage{background:#222!important} #commicBox{overflow:hidden} #commicBox>div{text-align:center; } #commicBox>div>img{width:80%!important;margin: 0px -3% 0px 3%;} #pageNum { position: fixed; top: 50px; background: rgba(238, 170, 0, 0.5); color: blanchedalmond; height: 1.6em; text-align:center; line-height: 1.6em; font-size: 2.3em; right: 0px; } #np_chap{ position: fixed; bottom:30%; right: 20px; z-index: 11111; } #np_chap>div>a, #np_chap>a{ cursor: pointer; display: block; background: transparent url("/images/page_bg.png") no-repeat scroll center bottom / 100% auto; width: 40px; height:40px; transform: rotate(90deg); margin-top: 5px; box-shadow: 0 0 6px -2px rgba(255, 255, 255, 0.65); border-radius: 8px; } #np_chap>div>a:not(:hover), #np_chap>a:not(:hover){ opacity: .5; } #np_chap>div>a:last-child{ transform: rotate(-90deg); } #np_chap>a{ background: rgba(0, 0, 0, 0.7); transform:none; position:relative; } /*首页小房子*/ #np_chap>a>span{ position:absolute; width: 16px; height:8px; border: 1.5px solid #fff; border-top-width: 0; border-radius: 0 0 2.5px 2.5px; top:50%; left:calc(50% - 8px); pointer-events:none; } #np_chap>a>span::before, #np_chap>a>span::after{ position:absolute; content: ""; width: 15px; border-top: 1.5px solid #fff; transform: rotate(-40deg); top:-7px; left:-5px; } #np_chap>a>span::before{ transform: rotate(40deg); left:auto; right:-5px; } #tucao{ position: fixed; top: 50px; left: 0; color: #fff; z-index: 1111111; height: calc(100% - 115px); } #tucao:not(:hover){ opacity: 0.5 } #tucao ul{ overflow-y:hidden; height: calc(100% - 40px); } #tucao:hover ul{ overflow-y: scroll; } #tucao pre{ font-weight: bold; margin-bottom: 5px; } #tucao li{ margin-bottom: 5px; margin-left: 3px; } #tucao span{ padding: 0px 3px; border-radius: 2px; cursor: pointer; border:transparent 1px solid; } #tucao span:hover{ background-color:#FFF!important; color:#000; border-color:red; } .control_scroll{ margin-top: 0!important; padding-top:0!important; opacity:.5; transition: opacity 0.3s cubic-bezier(.55,.09,.68,.53) 0s; } .control_scroll:hover{ opacity:1; } #m_r_bottom{ display:block!important; height:38px!important } #m_r_bottom>.BtnBox{ display:none; } #m_r_slider{ background-clip: content-box; padding: 14px 0px; top: 3px; } #m_r_slider_ball{ top: 3px; } .control_commentIcon{ margin-top: 9px; } /*#m_r_panelbox{display:none!important} #commicBox>div>img{border-top:2px solid red;margin-top:-2px;}*/ #chapters { display:none; position: fixed; z-index: 100000000000; width: 60%; max-width: 400px; max-height: calc(100% - 150px); height: auto; overflow-y: scroll; top:50%; left: 50%; transform: translate(-50%, -50%); background: rgba(255,255,255,.9); border: 5px solid rgba(0,0,0,.5); border-radius: 5px; padding: 10px; } #chapters.show{ display:block; } #chapters ul:after{ display: list-item; clear: both; content: ''; } #chapters dt{ border-bottom: 2px solid #ccc; font-size: 150%; text-indent: .5em; padding: 5px 0; } #chapters dl+dl{ border-top: 2px solid #ccc; } #chapters li{ float: left; width: 33%; padding: 2px 8px; box-sizing: border-box; } #chapters a{ display: inline-block; border: 2px solid transparent; padding:0 5px; color: #000; max-width: 100%; white-space: pre; overflow: hidden; text-overflow: ellipsis; } #chapters a:hover{ color:blue; border-color:blue; } #chapters a.cur{ border-color:orange; } /*底栏*/ .botNav{ background-color: #222; } .letchepter{ padding-bottom: 40px; background-color: #222; border-top-color:#000; } .letchepter .disable{ color:#4d4d4d !important; } .letchepter .disable:hover{ cursor:not-allowed; } `}, document.head); var updateMobilePage = () => { //去倒计时guanggao window['times'] = 0; typeof window['llt'] === 'function' && window['llt'](); var data = $$('body script:not([src])').map(s => s.textContent.match(/mReader\.initData\((.+\})(?=,\s*(?:"|'))/)).filter(s=>s)[0][1]; _cE('script', {text: `(function(data){ var _cE = ${_cE.toString()}; var _preventParentScrolling = ${_preventParentScrolling.toString()}; ` + (function(){ var tucao = _cE('div', {id:'tucao', text: '评论加载中..'}, document.body); window.success_jsonpCallback = function(json){ var length = json.data && json.data.list && json.data.list.length || 0; tucao.innerHTML = ''; _cE('pre', {text: ' <' + data.chapter_name+'>\n'+(json.msg=='提交成功'? '' : ' '+json.msg) + (length ? ' 现有 '+ length+'/'+(json.data && json.data.total || 0)+' 吐槽:' : '')}, tucao); if(!length) return; var ul = _cE('ul', null, tucao), opacity = 1, tc = null; for(var i=0; idiv[id]').children; var ch = document.documentElement.clientHeight; for(var i=0;i 95) return i + 1; } }; var scrollTimeout; var updatePager = function(){ // 页码 !_dragToScroll && mReader.updatePageDisplay(); var i = mReader.getCurrPage(); if(i) return (_pageNum._page != i) && (_pageNum.textContent = (_pageNum._page = i) + '/' + sum_pages); }; addEventListener('scroll', function(){ cancelAnimationFrame(scrollTimeout); scrollTimeout = requestAnimationFrame(updatePager); }); //修复拖拽进度条 var slider = document.getElementById('m_r_slider_ball'), sliderBar = document.getElementById('m_r_slider'), _isSlider = false, _sliderOffset = 0, _dragToScroll = false; if(slider && sliderBar){ mReader.clickAction = eval('('+ mReader.clickAction.toString() .replace(/#m_r_bottom/g, '#mark') +').bind(mReader)'); //拖拽滑块跳转 addEventListener('mousemove', eval('('+ mReader.touchMoveAction.toString() .replace(/^.*\{/, '$&\nif(!_isSlider) return;\n') .replace('touches[0]', 'event') .replace('32 -', '_sliderOffset - ') .replace(/.*\}$/,'_pageNum.textContent = this.curr_page + "/"+ this.page_num;$&') +').bind(mReader)')); slider.onmousedown = event => { if(event.button !== 0 || event.target !== slider) return; _isSlider = true; _sliderOffset = event.clientX - slider.offsetLeft - slider.parentNode.offsetLeft; }; addEventListener('mouseup', () => { if(!_isSlider) return; _isSlider = false; _dragToScroll = true; mReader.touchEndAction(); }); //点击进度条位置跳转 sliderBar.addEventListener('mousedown', eval('('+ mReader.touchMoveAction.toString() .replace(/^.*\{/, '$&\nif(event.button !== 0)return;\nevent.preventDefault();' +'\n_isSlider = true; _dragToScroll = true;\n') .replace('touches[0]', 'event') .replace('32 -', '2*') .replace('currX < max', 'currX <= max') .replace(/.*\}$/,'_pageNum.textContent = this.curr_page + "/"+ this.page_num;$&') +').bind(mReader)')); } //弹出确定取消订阅窗口询问,以免误点击取消订阅。 if(typeof window.canDY === 'function'){ var _canDY = window.canDY; window.canDY = obj => { if(obj.classList.contains('dy_h') && !window.confirm('是否确定取消订阅?')) return; _canDY(obj); }; } }).toString().replace(/^[^{]+{/, '') + `)(${data.sum_pages})`}, document.head).remove(); //拖拽滚动页面 ({ _isMousedown: false, _x:0, _y:0, _lx: 0, _ly: 0, init:function(){ ['mousedown', 'mouseup', 'mousemove'].forEach(e => document.addEventListener(e, this)); $$('#m_r_panelbox')[0].removeAttribute('onclick'); }, _setCursorTimeout: null, handleEvent: function(event){ switch(event.type){ case 'mousedown' : if(event.button !== 0) return; if(event.target.id == 'm_r_panelbox'){ event.preventDefault(); }else{ return; } this._isMousedown = true; this._x = this._lx = event.clientX; this._y = this._ly = event.clientY; clearTimeout(this._setCursorTimeout); this._setCursorTimeout = setTimeout(() => { document.body.style.cursor = 'move'; }, 150); break; case 'mouseup' : this._isMousedown = false; this._x = this._lx = this._y = this._ly = 0; clearTimeout(this._setCursorTimeout); document.body.style.cursor = ''; break; case 'mousemove' : if(!this._isMousedown) break; var x = event.clientX - this._x, y = event.clientY - this._y; if(Math.sqrt(x * x + y * y) > 10){ //屏蔽漫画页怪异模式下无法获取根节点scrollTop var st = document.documentElement.scrollTop || document.body.scrollTop, dis = Math.abs(event.clientY - this._ly); scrollTo(0, st - (event.clientY - this._ly) * Math.min(1.8, 1 + dis * 100 / innerHeight)); this._lx = event.clientX; this._ly = event.clientY; } break; } } }).init(); };//updateMobilePage end //通过屏蔽漫画页面为怪异模式判定 if(document.compatMode === 'BackCompat' && /漫画(内容)?不存在/.test(document.body.textContent)){ document.body.innerHTML = `

该漫画浏览器端被屏蔽,正在尝试恢复。。

`; _cE('link', {href:'/css/style.css?2015102217', type: 'text/css', rel: 'stylesheet'}, [document.head]); _cE('link', {href:'/css/global.css?2015111317', type: 'text/css', rel: 'stylesheet'}, [document.head]);//权重降低 var scriptLoader = urls => Promise.all(urls.map(url => new Promise((resolve, reject) => { var script = _cE('script', {src: url}, document.body); script.onload = resolve; script.onerror = reject; }))); var queues = arr => Promise.all(arr.map(a => typeof a === 'function' ? new Promise(a) : a)); var xhr = (url, callback) => { var n = 'dmzj_get_chapters'; var nid = n + Math.random(); var onMessage = e => { if(e.data.nid == n + new URL(url).host && !e.data.response){ e.source.postMessage({url: url, nid: nid}, e.origin); }else if(e.data.nid == nid){ removeEventListener('message', onMessage); callback(e); } }; addEventListener('message', onMessage); }; //shijizhiling 8785 var pathname = location.pathname.split('/'); var chapterId = pathname.pop().split('.').shift(); var comicName = pathname.pop(); var v2Iframe = null; var getChapter = queues([ callback => { //地址栏漫画id是数字 if(/^\d+$/.test(comicName)){ return callback(comicName); } //抓取pc端页面数据获取数字id var iframe = _cE('iframe', {style: 'display:none', src: 'http://manhua.dmzj.com/zt/module/'}, document.body); xhr('http://manhua.dmzj.com/'+ comicName + '/', e => { iframe.remove(); iframe = null; var match = e.data.response && e.data.response.match(/var g_comic_id = "(\d+)";/); callback(match ? match[1] : Promise.reject(new Error('该漫画真的不存在或可能已被删除'))); }); }, callback => { //同时加载 api iframe var onMessage = e => { if(e.data.nid == 'dmzj_get_chapters'+'v2.api.dmzj.com' && !e.data.response){ removeEventListener('message', onMessage); callback(e); } }; addEventListener('message', onMessage); v2Iframe = _cE('iframe', {style: 'display:none', src: 'http://v2.api.dmzj.com/'}, document.body); }]).then(e => { var subId = e[0]; if(!subId) throw new Error(e); //屏蔽漫画章节id全局变量依赖 window.subId = subId; window.chapterId = chapterId; return queues([ 'http://v2.api.dmzj.com/comic/'+ subId + '.json', 'http://v2.api.dmzj.com/chapter/'+ subId + '/' + chapterId + '.json' ].map(url => { return callback => { //获取漫画章节目录 var nid = 'dmzj_get_chapters' + Math.random(); var onMessage = e => { if(e.data.nid == nid && e.data.response){ removeEventListener('message', onMessage); callback(e); } }; addEventListener('message', onMessage); e[1].source.postMessage({ nid: nid, url: url }, e[1].origin); }; })); }); scriptLoader(['/js/jquery-1.9.1.min.js']).then(() => { return queues([ getChapter,//获取章节 scriptLoader([ '/js/jquery.cookie.js', '/js/common.js', '/js/domain.js', '/js/m_reader.js?2015102416', '/js/TSB.js', '/js/main.js', '/js/jquery.lazyload.min.js', ]), ]); }).then(e => { v2Iframe.remove(); v2Iframe = null; var json = [JSON.parse(e[0][0].data.response), JSON.parse(e[0][1].data.response)]; //必须等待获取章节id全局变量依赖 return scriptLoader(['/js/m_readerBg.js?20160720']).then(() => { return json; }); }).then(([json1, json2]) => { document.body.insertAdjacentHTML('afterBegin', ''); var chapters = json1.chapters.map(d => d.data.find(cid => cid.chapter_id == chapterId)); var cindex, chapter, index; if(chapters.every(c => !c)){ //数据库最新章节列表缓存未更新 chapter = json2; cindex = index = 0; }else{ cindex = chapters.findIndex(c => c); chapter = chapters[cindex]; index = json1.chapters[cindex].data.indexOf(chapter); } var data = { id: chapterId, comic_id: json1.id, chapter_name: chapter.chapter_title, chapter_order: chapter.chapter_order, createtime: chapter.updatetime, page_url: json2.page_url, chapter_type:0, chapter_num:chapter.chapter_order, sum_pages:json2.picnum, direction:json2.direction, filesize:chapter.filesize, picnum:json2.picnum, hit:json1.hit_num, comment_count:json2.comment_count }; if(json1.chapters[cindex].data.length > index + 1) data.prev_chap_id = json1.chapters[cindex].data[index + 1].chapter_id; if(index > 0) data.next_chap_id = json1.chapters[cindex].data[index - 1].chapter_id; document.title = json1.title + ' - ' + chapter.chapter_title; _cE('script', {text:`mReader.initData(${JSON.stringify(data)}, "${json1.title}", "${json1.cover}");`}, [document.body]); updateMobilePage(); var div = _cE('div', {id: 'chapters'}); div.innerHTML = '
' + json1.chapters.map((d, i) => { return d.data.map((c, j) => { return `
  • ${c.chapter_title}
  • `; }).join(''); }).map((c, i) => { return `
    ${json1.chapters[i].title}
      ${c}
    `; }).join('') + '
    '; _preventParentScrolling(div); //修复分享按钮 _cE('script', {id: 'bdshare_js', data: 'type=tools&mini=1'}, document.body); _cE('script', {id: 'bdshell_js', src: 'https://static.dmzj.com/baidushare/static/js/shell_v2.js?cdnversion=' + Math.ceil(new Date()/3600000)}, document.body); //修复吐槽链接 $$('.tc, .control_commentIcon').forEach(tc => tc.href = `/viewpoint/${data.comic_id}/${data.id}.html`); $$('.BarTit')[0].textContent = chapter.chapter_title; //没有触发resize、scroll事件无法显示第一张图片。 //异步延时触发,避免同步渲染计算图片元素无高度值,会将图片全部加载。 _cE('script', {text:`setTimeout(() => window.jQuery(window).trigger('scroll'), 0);`}, document.body).remove(); var msg = $$('#msgContainer>p')[0]; if(msg){ _cE('p', {text: '恢复成功!!', style: 'color: green;'}, msg); msg.style.cssText = 'font-size:12px; color:#888;'; var msgContainer = msg.parentNode; msgContainer.addEventListener('transitionend', event => { if(event.propertyName === 'color' && event.target === msg){ msgContainer.style.opacity = 0; }else if(event.propertyName === 'opacity' && event.target === msgContainer){ msgContainer.remove(); } }); } var btn = $$('#np_chap>a')[0]; var backLink = $$('.ChapterLestMune')[0]; backLink.href = btn.href; document.body.appendChild(div); document.addEventListener('click', event=>{ if(event.button === 0 && (event.target === btn || event.target === backLink)){ div.classList.toggle('show'); return event.preventDefault(); } if(div.contains(event.target)) return; div.classList.remove('show'); }); }).catch(e => { console.error(e); $$('#msgContainer>p')[0].appendChild( _cE('p', {text: '恢复失败。。', style: 'color: red;'}) ).parentNode.style.cssText = 'font-size:12px; color:#888;'; }); }else{ updateMobilePage(); } }else if('mobileHome'== gUrl){ _cE('style', {text: ` .imgBox [class^='col_3_'] li{ width: 10%!important; min-width: 120px; margin: 0px 0% 0% 3%!important; } .imgBox [class^='col_2'] li{ width: 18%!important; min-width: 200px; } .imgBox [class^='col_3_'] li img{ height: auto!important; } .imgBox [class^='col_3_'] li:nth-child(7n+1){ clear:left; } `}, document.head); } })();