◆少前百科是非盈利性、非官方的少女前线维基百科。 ◆如果您发现某些内容错误/空缺,请勇于修正/添加!参与进来其实很容易!点这里 加入少前百科。 ◆有任何意见、建议、纠错,欢迎在 GFwiki:反馈与建议 提出和讨论。编辑事务讨论QQ群:597764980,微博@GFwiki少前百科 ◆To foreigners,You can use twitter to contact us. |
“Widget:Tdollquery2”的版本间的差异
Mikumikuer(讨论 | 贡献) |
小 (人形头像使用相对路径) |
||
(未显示4个用户的212个中间版本) | |||
第1行: | 第1行: | ||
− | <style type="text/css"> | + | <includeonly><style type="text/css"> |
+ | .skin-minerva #TDollQuery {font-size: 0.9em;margin: 15px 0 !important;} | ||
+ | /* 紧凑模式 */ | ||
+ | table#Tdolltable.cardMode > tbody { | ||
+ | display:flex; | ||
+ | flex-direction: row; | ||
+ | flex-wrap: wrap; | ||
+ | align-content: center; | ||
+ | justify-content: flex-start; | ||
+ | align-items: stretch; | ||
+ | background:transparent; | ||
+ | width:100%; | ||
+ | } | ||
+ | table#Tdolltable.cardMode thead {display:none} | ||
+ | table#Tdolltable.cardMode > tbody > tr { | ||
+ | flex: 1 1 310px; | ||
+ | grid-template-columns: 16.6% 16.6% 16.6% 16.6% 16.6% 1fr; | ||
+ | grid-template-rows: initial; | ||
+ | grid-template-areas: initial; | ||
+ | grid-auto-flow: row; | ||
+ | grid-auto-columns: initial; | ||
+ | grid-auto-rows: initial; | ||
+ | display: grid; | ||
+ | margin: 2px; | ||
+ | padding: 1px; | ||
+ | border: 2px double; | ||
+ | border-image: url(/images/vectorize_border/BORDER_BIG.svg); | ||
+ | border-image-slice: 10 fill; | ||
+ | border-image-width: 10px; | ||
+ | background-clip: content-box; | ||
+ | min-width:290px; | ||
+ | } | ||
+ | |||
+ | table#Tdolltable.cardMode > tbody > tr > td { | ||
+ | margin:1px; | ||
+ | border-width:0px !important; | ||
+ | display:flex; | ||
+ | flex-direction: column; | ||
+ | align-content: center; | ||
+ | align-items: center; | ||
+ | justify-content: center; | ||
+ | min-width:40px !important; | ||
+ | flex-wrap: nowrap; | ||
+ | max-width: none !important; | ||
+ | } | ||
+ | |||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(1) {grid-column: 1/span 2;grid-row-start:1;} | ||
+ | |||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(2) {grid-column: 1/span 2;grid-row-start:2;} | ||
+ | |||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(3) {grid-column: 5/span 2;grid-row:1/span 2;} | ||
+ | |||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(4) {grid-column: 3/span 2;grid-row:1/span 2;} | ||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(4) br {content:" ";display:none} | ||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(4)::before {content:"人形类别";font-weight:bold;color:#f4c430} | ||
+ | |||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(5) {grid-column: auto/span 1;grid-row-start:span 1} | ||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(5)::before {content:"生命值";white-space:pre;font-weight:bold;color:#f4c430} | ||
+ | |||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(6) {grid-column: auto/span 1;} | ||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(6)::before {content:"伤害\A";white-space:pre;font-weight:bold;color:#f4c430} | ||
+ | |||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(7) {grid-column: auto/span 1;} | ||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(7)::before {content:"射速\A";white-space:pre;font-weight:bold;color:#f4c430} | ||
+ | |||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(8) {grid-column: auto/span 1;} | ||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(8)::before {content:"命中\A";white-space:pre;font-weight:bold;color:#f4c430} | ||
+ | |||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(9) {grid-column: auto/span 1;} | ||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(9)::before {content:"回避\A";white-space:pre;font-weight:bold;color:#f4c430} | ||
+ | |||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(10) {grid-column: auto/span 1;} | ||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(10)::before {content:"护甲\A";white-space:pre;font-weight:bold;color:#f4c430} | ||
+ | table#Tdolltable > tbody > tr > td:nth-child(10):empty::after {content:"N/A"} | ||
+ | |||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(11) {grid-column: auto/span 2;} | ||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(11)::before {content:"建造时间\A";white-space:pre;font-weight:bold;color:#f4c430} | ||
+ | |||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(12) {grid-column: auto/span 4;min-height: 85px;} | ||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(12) div {margin:4px} | ||
+ | |||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(13) {grid-column: auto/span 6;min-height: 4rem;background-image: linear-gradient(315deg,transparent 4px, rgba(119,119,119,0.33) 5px);background-color: transparent !important;} | ||
+ | table#Tdolltable.cardMode > tbody > tr > td:nth-child(13)::before {content:"获得方式\A";white-space:pre;font-weight:bold;color:#f4c430} | ||
+ | |||
+ | /* 紧凑end */ | ||
+ | .error {background-color: red;font-size: inherit;color: inherit;} | ||
+ | .skin-vector #buttonContainer div>label{min-width:118px} | ||
+ | div.divider | ||
+ | { | ||
+ | position: relative; | ||
+ | margin-top: 3px !important; | ||
+ | margin-bottom: 6px !important; | ||
+ | height: 1px; | ||
+ | } | ||
+ | .div-transparent:before | ||
+ | { | ||
+ | content: ""; | ||
+ | position: absolute; | ||
+ | top: 0; | ||
+ | left: 0%; | ||
+ | right: 0%; | ||
+ | width: 100%; | ||
+ | height: 1px; | ||
+ | background-image:linear-gradient(to right, #f4c430 80%, transparent); | ||
+ | } | ||
div.tileSearchCond { | div.tileSearchCond { | ||
display: inline-block; | display: inline-block; | ||
width: 100px; | width: 100px; | ||
+ | } | ||
+ | .unable { | ||
+ | opacity: 0.4; | ||
+ | pointer-events: none; | ||
} | } | ||
div.tileSearchCond:first-of-type { | div.tileSearchCond:first-of-type { | ||
第25行: | 第133行: | ||
position:relative; | position:relative; | ||
} | } | ||
− | div#buttonContainer span: | + | div#buttonContainer span:first-child { |
float:right; | float:right; | ||
margin-right: 1rem; | margin-right: 1rem; | ||
+ | } | ||
+ | .skin-minerva #content div#buttonContainer div:not(#TDollQuery) button { | ||
+ | padding: 6px 15px; | ||
+ | height: auto; | ||
+ | margin-bottom: 0px !important; | ||
+ | } | ||
+ | @media screen and (max-width:650px){ | ||
+ | .skin-minerva #Tdolltable {font-size:0.8rem} | ||
+ | .skin-minerva #Tdolltable .TDavatar {width:80px;height:80px} | ||
} | } | ||
div#buttonContainer button { | div#buttonContainer button { | ||
− | |||
padding: 0px 10px; | padding: 0px 10px; | ||
margin: 0px; | margin: 0px; | ||
第69行: | 第185行: | ||
font-size: 1.5rem; | font-size: 1.5rem; | ||
vertical-align: bottom; | vertical-align: bottom; | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
#miniTdolltable{ | #miniTdolltable{ | ||
第81行: | 第190行: | ||
margin: 0px; | margin: 0px; | ||
display: table; | display: table; | ||
+ | } | ||
+ | #miniTdolltable .TDavatar:hover {transform:scale(1.05);z-index:10} | ||
+ | #miniTdolltable .TDavatar{ | ||
+ | transition: 0.2s all ease-in-out; | ||
} | } | ||
#tableloading > td { | #tableloading > td { | ||
第97行: | 第210行: | ||
margin: 0px; | margin: 0px; | ||
} | } | ||
− | #tableempty | + | #tableempty{ |
background-size: 50px; | background-size: 50px; | ||
height: 50px; | height: 50px; | ||
font-size: 1.5rem; | font-size: 1.5rem; | ||
color: red; | color: red; | ||
+ | text-align: center; | ||
} | } | ||
− | div#TDollQuery { | + | |
− | vertical-align:baseline; | + | div#buttonContainer > div#TDollQuery { |
− | width:auto; | + | vertical-align: baseline; |
− | display: | + | width: auto; |
− | overflow:hidden; | + | display: grid; |
+ | overflow: hidden; | ||
transition: all 0.1s ease-in; | transition: all 0.1s ease-in; | ||
+ | grid-template-columns: 1fr 75px 60px; | ||
+ | grid-column-gap:0.2rem; | ||
+ | margin: 0.5rem 0; | ||
+ | height: 30px; | ||
} | } | ||
+ | |||
div#TDollQuery input#inputQuery { | div#TDollQuery input#inputQuery { | ||
− | padding:0px; | + | padding: 0px; |
− | margin:0px; | + | margin: 0px; |
− | top:0px; | + | top: 0px; |
− | border:0px solid; | + | border: 0px solid; |
− | border-left:5px solid #eaeaea; | + | border-left: 5px solid #eaeaea; |
box-shadow: inset 0 0 5px black; | box-shadow: inset 0 0 5px black; | ||
− | padding-left: | + | padding-left: 10px; |
transition: all 0.1s ease-in; | transition: all 0.1s ease-in; | ||
} | } | ||
第132行: | 第252行: | ||
#miniTdolltable div.TDavatar {width:20%;height:20%} | #miniTdolltable div.TDavatar {width:20%;height:20%} | ||
} | } | ||
− | td.tiles > | + | #Tdolltable > tbody > tr > td.tiles >div {display: grid;grid-template-columns: 50% 1fr;width: 100%;word-break: keep-all;} |
− | + | td.tiles table { | |
− | margin | + | margin:auto; |
border-spacing: 2px; | border-spacing: 2px; | ||
background: rgba(255, 255, 255, 0.33); | background: rgba(255, 255, 255, 0.33); | ||
border: 0px; | border: 0px; | ||
+ | width:55px; | ||
} | } | ||
.tilesTable td{padding:10px;} | .tilesTable td{padding:10px;} | ||
第144行: | 第265行: | ||
.tilesTable td.color2{background:#ffffff;} | .tilesTable td.color2{background:#ffffff;} | ||
.tilesTable td.color3{background:#FFC400;} | .tilesTable td.color3{background:#FFC400;} | ||
+ | |||
+ | #buttonContainer div>label>input { | ||
+ | display:none; | ||
+ | } | ||
+ | div#buttonContainer div:not(#TDollQuery) button { | ||
+ | padding: 8px 15px; | ||
+ | height: auto; | ||
+ | margin-bottom: 1px !important; | ||
+ | } | ||
+ | div#buttonContainer div:not(.divider) { | ||
+ | margin:0; | ||
+ | margin-bottom: 3px !important; | ||
+ | } | ||
+ | |||
+ | #buttonContainer div>label { | ||
+ | display: inline-block; | ||
+ | margin: 0; | ||
+ | position: relative; | ||
+ | overflow: hidden; | ||
+ | vertical-align: top; | ||
+ | } | ||
+ | |||
+ | #buttonContainer div>label>div { | ||
+ | padding: 5px 10px; | ||
+ | text-align: center; | ||
+ | border: #dddddd solid 1px; | ||
+ | user-select: none; | ||
+ | overflow: hidden; | ||
+ | position: relative; | ||
+ | } | ||
+ | #buttonContainer div>label>input:checked + div { | ||
+ | border:#f4c430 solid 1px; | ||
+ | color:#f4c430; | ||
+ | } | ||
+ | #buttonContainer div>label>input:checked + div:after { | ||
+ | content:''; | ||
+ | display:block; | ||
+ | width:20px; | ||
+ | height:20px; | ||
+ | background-color:#f4c430; | ||
+ | transform:skewY(-45deg); | ||
+ | position:absolute; | ||
+ | bottom:-10px; | ||
+ | right:0; | ||
+ | z-index:1; | ||
+ | } | ||
+ | #buttonContainer div>label>input:checked + div:before { | ||
+ | content:''; | ||
+ | display:block; | ||
+ | width:3px; | ||
+ | height:8px; | ||
+ | border-right:#000 solid 2px; | ||
+ | border-bottom:#000 solid 2px; | ||
+ | transform:rotate(35deg); | ||
+ | position:absolute; | ||
+ | bottom:2px; | ||
+ | right:4px; | ||
+ | z-index:2; | ||
+ | } | ||
+ | |||
+ | .sort-list>label { | ||
+ | display:inline-block; | ||
+ | margin:0; | ||
+ | position:relative; | ||
+ | overflow:hidden; | ||
+ | } | ||
+ | .sort-list>label>input { | ||
+ | display:none; | ||
+ | } | ||
+ | .sort-list>label>div { | ||
+ | padding: 5px 15px; | ||
+ | text-align: center; | ||
+ | border: #dddddd solid 1px; | ||
+ | user-select: none; | ||
+ | overflow: hidden; | ||
+ | position: relative; | ||
+ | } | ||
+ | .sort-list>label>input:checked + div { | ||
+ | border:#f4c430 solid 1px; | ||
+ | color:#f4c430; | ||
+ | } | ||
+ | .sort-list>label>input[data-sort-order=desc]:checked + div:after { | ||
+ | content:''; | ||
+ | display:block; | ||
+ | width:20px; | ||
+ | height:20px; | ||
+ | background-color:#f4c430; | ||
+ | transform:skewY(-45deg); | ||
+ | position:absolute; | ||
+ | bottom:-10px; | ||
+ | right:0; | ||
+ | z-index:1; | ||
+ | } | ||
+ | .sort-list>label>input[data-sort-order=desc]:checked + div:before { | ||
+ | content: ''; | ||
+ | display: block; | ||
+ | width: 5px; | ||
+ | height: 5px; | ||
+ | border-right: #000 solid 2px; | ||
+ | border-bottom: #000 solid 2px; | ||
+ | transform: rotate(0); | ||
+ | position: absolute; | ||
+ | bottom: 3px; | ||
+ | right: 3px; | ||
+ | z-index: 2; | ||
+ | } | ||
+ | |||
+ | .sort-list>label>input[data-sort-order=asc]:checked + div:after { | ||
+ | content: ''; | ||
+ | display: block; | ||
+ | width: 20px; | ||
+ | height: 20px; | ||
+ | background-color: #f4c430; | ||
+ | transform: skewY(-45deg); | ||
+ | position: absolute; | ||
+ | top: -10px; | ||
+ | left: 0; | ||
+ | z-index: 1; | ||
+ | } | ||
+ | .sort-list>label>input[data-sort-order=asc]:checked + div:before { | ||
+ | content: ''; | ||
+ | display: block; | ||
+ | width: 5px; | ||
+ | height: 5px; | ||
+ | border-right: #000 solid 2px; | ||
+ | border-bottom: #000 solid 2px; | ||
+ | transform: rotate(180deg); | ||
+ | position: absolute; | ||
+ | top: 3px; | ||
+ | left: 3px; | ||
+ | z-index: 2; | ||
+ | } | ||
+ | |||
+ | |||
<!--{if ($hideinput)==1}-->div#TDollQuery {display:none;}<!--{/if}--> | <!--{if ($hideinput)==1}-->div#TDollQuery {display:none;}<!--{/if}--> | ||
− | </style><div style="max-width: | + | </style><div style="max-width: 66rem;"> |
<div id="buttonContainer" style="margin: 2px;"> | <div id="buttonContainer" style="margin: 2px;"> | ||
− | < | + | <span>[<a href="javascript:void(0);">全清</a>]</span> |
− | |||
− | |||
<div style="display: block;padding-left: 1rem;margin: 0.1rem auto;">点选下列格子查询人形影响格布局:<br><div class="tileSearchCond">影响格位置: | <div style="display: block;padding-left: 1rem;margin: 0.1rem auto;">点选下列格子查询人形影响格布局:<br><div class="tileSearchCond">影响格位置: | ||
<table class="tileSearch" id="effectarea" align="center" cellpadding="0" cellspacing="0" style="border-spacing: 2px;background: rgba(255, 255, 255, 0.33);border: 0px;"> | <table class="tileSearch" id="effectarea" align="center" cellpadding="0" cellspacing="0" style="border-spacing: 2px;background: rgba(255, 255, 255, 0.33);border: 0px;"> | ||
第162行: | 第415行: | ||
<tr><td class="active"></td><td class="active"></td><td class="active"></td></tr> | <tr><td class="active"></td><td class="active"></td><td class="active"></td></tr> | ||
</tbody></table></div></div> | </tbody></table></div></div> | ||
− | + | <div class="tilesAffectBox">影响对象选择: | |
− | + | <div id="affectChecker" style="display: block;"> | |
− | + | <button class="clearSelect">清除</button> | |
− | + | <button class="invertSelect">反选</button> | |
− | + | <label for="HGaff"><input type="checkbox" id="HGaff" class="filter_item"><div>影响HG</div></label> | |
− | + | <label for="SMGaff"><input type="checkbox" id="SMGaff" class="filter_item"><div>影响SMG</div></label> | |
− | + | <label for="ARaff"><input type="checkbox" id="ARaff" class="filter_item"><div>影响AR</div></label> | |
− | + | <label for="RFaff"><input type="checkbox" id="RFaff" class="filter_item"><div>影响RF</div></label> | |
− | + | <label for="MGaff"><input type="checkbox" id="MGaff" class="filter_item"><div>影响MG</div></label> | |
− | + | <label for="SGaff"><input type="checkbox" id="SGaff" class="filter_item"><div>影响SG</div></label> | |
− | + | <label for="ALLaff"><input type="checkbox" id="ALLaff" class="filter_item"><div>影响ALL</div></label> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | < | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | < | ||
− | |||
</div> | </div> | ||
− | + | </div> | |
− | <input type="checkbox" id=" | + | <div class="divider div-transparent"></div> |
+ | <div> | ||
+ | <button class="clearSelect">清除</button> | ||
+ | <button class="invertSelect">反选</button> | ||
+ | <label for="HGDoll"><input type="checkbox" id="HGDoll" class="filter_item" /><div>手枪人形</div></label> | ||
+ | <label for="SMGDoll"><input type="checkbox" id="SMGDoll" class="filter_item" /><div>冲锋枪人形</div></label> | ||
+ | <label for="ARDoll"><input type="checkbox" id="ARDoll" class="filter_item" /><div>突击步枪人形</div></label> | ||
+ | <label for="RFDoll"><input type="checkbox" id="RFDoll" class="filter_item" /><div>步枪人形</div></label> | ||
+ | <label for="MGDoll"><input type="checkbox" id="MGDoll" class="filter_item" /><div>机枪人形</div></label> | ||
+ | <label for="SGDoll"><input type="checkbox" id="SGDoll" class="filter_item" /><div>霰弹枪人形</div></label> | ||
+ | </div> | ||
+ | <div class="divider div-transparent"></div> | ||
+ | <div> | ||
+ | <button class="clearSelect">清除</button> | ||
+ | <button class="invertSelect">反选</button> | ||
+ | <label for="rarity2"><input type="checkbox" id="rarity2" class="filter_item" /><div>★★</div></label> | ||
+ | <label for="rarity3"><input type="checkbox" id="rarity3" class="filter_item" /><div>★★★</div></label> | ||
+ | <label for="rarity4"><input type="checkbox" id="rarity4" class="filter_item" /><div>★★★★</div></label> | ||
+ | <label for="rarity5"><input type="checkbox" id="rarity5" class="filter_item" /><div>★★★★★</div></label> | ||
+ | <label for="rarity6"><input type="checkbox" id="rarity6" class="filter_item" /><div>★★★★★★</div></label> | ||
+ | <label for="rarity1"><input type="checkbox" id="rarity1" class="filter_item" /><div>★EXTRA</div></label> | ||
+ | </div> | ||
+ | <div class="divider div-transparent"></div> | ||
+ | <div id="obtainWays"> | ||
+ | <button class="clearSelect">清除</button> | ||
+ | <button class="invertSelect">反选</button> | ||
+ | <label for="buildObtain" title="常规制造/重型制造"><input type="checkbox" id="buildObtain" class="filter_item" /><div>建造获得</div></label> | ||
+ | <label for="dropObtain" title="通常战役/战役S评价/常驻活动"><input type="checkbox" id="dropObtain" class="filter_item" /><div>常驻救援</div></label> | ||
+ | <label for="otherObtain" title="主线剧情/成就奖励"><input type="checkbox" id="otherObtain" class="filter_item" /><div>任务奖励</div></label> | ||
+ | <label for="specialObtain" title="限时战役/限时活动/限时商城/作战纲领/签到奖励/密钥活动"><input type="checkbox" id="specialObtain" class="filter_item" /><div>限时活动</div></label> | ||
+ | <label for="unableObtain" title="无法获取"><input type="checkbox" id="unableObtain" class="filter_item" /><div>无法获取</div></label> | ||
+ | </div> | ||
+ | <div class="divider div-transparent"></div> | ||
+ | <div> | ||
+ | <button class="clearSelect">清除</button> | ||
+ | <button class="invertSelect">反选</button> | ||
+ | <label for="DGMindupgraded"><input type="checkbox" id="DGMindupgraded" class="filter_item" /><div>心智升级</div></label> | ||
+ | <label for="nonDGMindupgraded"><input type="checkbox" id="nonDGMindupgraded" class="filter_item" /><div>普通人形</div></label> | ||
+ | </div> | ||
+ | <div id="TDollQuery"><input type="text" placeholder="输入枪名" id="inputQuery"/><button title="输入【t:HHMM】,只输入小时与分钟,无需空格" type="button" onclick="focusTime()">搜索时间</button><button id="clearInput" type="button">清除</button></div> | ||
+ | <div > | ||
+ | <div style="float:right;clear: right;"> | ||
+ | <label for="tableMode"><input type="radio" id="tableMode" data-freeze="true" class="filter_item" name="showType" checked/><div>表格模式</div></label> | ||
+ | <label for="cardMode"><input type="radio" id="cardMode" data-freeze="true" class="filter_item" name="showType" /><div>卡片模式</div></label> | ||
+ | <label for="iconOnly"><input type="radio" id="iconOnly" data-freeze="true" class="filter_item" name="showType" /><div>精简模式</div></label> | ||
+ | </div> | ||
+ | <label for="MOD3Data"><input type="checkbox" id="MOD3Data" checked="true" data-freeze="true" class="filter_item" /><div>显示MOD3数据</div></label> | ||
+ | </div> | ||
+ | |||
+ | </div> | ||
+ | |||
+ | <div class="sort-list"> | ||
+ | <div>排序方式(按下两次切换升降序):</div> | ||
+ | <label><input type="radio" id="sortReldate" name="sort"><div>实装日期</div></label> | ||
+ | <label><input type="radio" id="sortId" name="sort"><div>编号</div></label> | ||
+ | <label><input type="radio" id="sortRarity" name="sort"><div>稀有度</div></label> | ||
+ | <label><input type="radio" id="sortHp" name="sort"><div>生命值</div></label> | ||
+ | <label><input type="radio" id="sortAtk" name="sort"><div>伤害</div></label> | ||
+ | <label><input type="radio" id="sortRate" name="sort"><div>射速</div></label> | ||
+ | <label><input type="radio" id="sortAcc" name="sort"><div>命中</div></label> | ||
+ | <label><input type="radio" id="sortEva" name="sort"><div>回避</div></label> | ||
+ | <label><input type="radio" id="sortArmor" name="sort"><div>护甲</div></label> | ||
+ | <label><input type="radio" id="sortProtime" name="sort"><div>建造时间</div></label> | ||
</div> | </div> | ||
− | <div id="page-info-div" style="display: block;"><a | + | <div id="page-info-div" style="display: block;position: relative;"><a class="PrevPage" href="javascript:void(0);" style="visibility: hidden;float: left;">◀上一页</a> |
− | <span id="per-page-span">每页<select | + | <span id="per-page-span">每页<select class="per-page" style="background: white;"><option>50</option><option>100</option><option>200</option><option>500</option></select></span> |
− | <span | + | <span class="resultBox" style="position: absolute;width: 100%;text-align: center;left: 0px;pointer-events: none;">数据载入中,请稍后</span> |
− | <span style="position:absolute;right: | + | <span style="position:absolute;right:16%;">第<select class="cur-page" style="background: white;"></select>页</span> |
− | <a | + | <a class="NextPage" href="javascript:void(0);" style="visibility: visible;float: right;">下一页▶</a></div> |
<div id="position-marker"></div> | <div id="position-marker"></div> | ||
− | </div><BR><script type="text/javascript"> | + | <div id="page-info-div" style="display: block;position: relative;"><a class="PrevPage" href="javascript:void(0);" style="visibility: hidden;float: left;">◀上一页</a> |
+ | <span id="per-page-span">每页<select class="per-page" style="background: white;"><option>50</option><option>100</option><option>200</option><option>500</option></select></span> | ||
+ | <span class="resultBox" style="position: absolute;width: 100%;text-align: center;left: 0px;pointer-events: none;">数据载入中,请稍后</span> | ||
+ | <span style="position:absolute;right:16%;">第<select class="cur-page" style="background: white;"></select>页</span> | ||
+ | <a class="NextPage" href="javascript:void(0);" style="visibility: visible;float: right;">下一页▶</a></div> | ||
+ | </div><BR><script type="text/javascript">(window.RLQ=window.RLQ||[]).push(function(){ | ||
window.DollsData = new Array; $(".dolldata").each( function (index, element){ var o = new Object(); for (var k in element.dataset){ if(k!="artist"){o[k] = element.dataset[k]} } window.DollsData.push(o); element.remove(); })//获取数据 | window.DollsData = new Array; $(".dolldata").each( function (index, element){ var o = new Object(); for (var k in element.dataset){ if(k!="artist"){o[k] = element.dataset[k]} } window.DollsData.push(o); element.remove(); })//获取数据 | ||
第215行: | 第511行: | ||
var sortList = window.DollsData; // 初始化人形数据 | var sortList = window.DollsData; // 初始化人形数据 | ||
− | var | + | var emptydiv = "\<div class='' id=\"tableempty\"\>无结果\<\/div\>"; //无结果label |
− | |||
− | |||
− | |||
− | |||
− | |||
var inputer = document.getElementById("buttonContainer").getElementsByTagName("input") | var inputer = document.getElementById("buttonContainer").getElementsByTagName("input") | ||
var baseurl = "\/w\/TDL" | var baseurl = "\/w\/TDL" | ||
+ | |||
+ | const typeIcons = {'手枪': 'd/dd', '冲锋枪': 'b/b4', '步枪': '2/25', '突击步枪': 'b/b5', '机枪': 'b/b4', '霰弹枪': '9/99'}; | ||
var debounce = function(idle, action){ //去抖函数 文本框使用 | var debounce = function(idle, action){ //去抖函数 文本框使用 | ||
第235行: | 第528行: | ||
} | } | ||
}; | }; | ||
+ | function mod_key(str,obj){ | ||
+ | var stat=""; | ||
+ | var key=""; | ||
+ | var show=$("#MOD3Data").prop("checked"); | ||
+ | if(obj.mod==1&&show){stat="mod"}else{stat="base"} | ||
+ | switch(str){ | ||
+ | case "skill":if (obj.mod==1&&show) {key=`${str}2`}else{key=`${str}1`};break; | ||
+ | case "tiles":if (obj.mod==1&&show) {key=`${str}Mod`}else{key=str};break; | ||
+ | case "rarity":if (obj.mod==1&&show) {key='modRarity'}else{key=str};break; | ||
+ | case "avatar":if (obj.mod==1&&show) {key=str+"Mod"}else{key=str};break; | ||
+ | case "affect":if (obj.mod==1&&show) {key="tilesAffectMod"}else{key="tilesAffect"};break; | ||
+ | case "mod":if (obj.mod==1&&show) {key=true}else{key=false};break; | ||
+ | case "Effect1":; | ||
+ | case "Effect2":if (obj.mod==1&&show) {key=`modtile${str}Time`}else{key=`tile${str}Time`};break; | ||
+ | default:key=`${stat}${str}`;break; | ||
+ | } | ||
+ | return key; | ||
+ | } | ||
+ | |||
+ | //排序函数 | ||
+ | var index=$("input[name=sort]"); | ||
+ | var lastSort=index[0]; | ||
+ | index[0].checked=true;index.attr("data-sort-order","desc"); | ||
+ | var sortOrder=-1; | ||
+ | |||
+ | var sortType=new Object(); | ||
+ | sortType.sortId=function (a,b){return sortOrder*(a.id - b.id)} | ||
+ | sortType.sortRarity=function (a,b){return a[mod_key("rarity",a)]!=b[mod_key("rarity",b)]?sortOrder*(a[mod_key("rarity",a)]-b[mod_key("rarity",b)]):sortType.sortId(a,b)} | ||
+ | sortType.sortReldate=function (a,b){return a.timeStamp!=b.timeStamp?sortOrder*(a.timeStamp-b.timeStamp):sortType.sortId(a,b)} | ||
+ | sortType.sortAtk=function(a,b){return a[mod_key("Atk",a)]!=b[mod_key("Atk",b)]?sortOrder*(a[mod_key("Atk",a)]-b[mod_key("Atk",b)]):sortType.sortRarity(a,b)}; | ||
+ | sortType.sortHp=function(a,b){return a[mod_key("Hp",a)]!=b[mod_key("Hp",b)]?sortOrder*(a[mod_key("Hp",a)]-b[mod_key("Hp",b)]):sortType.sortRarity(a,b)} | ||
+ | sortType.sortEva=function(a,b){return a[mod_key("Eva",a)]!=b[mod_key("Eva",b)]?sortOrder*(a[mod_key("Eva",a)]-b[mod_key("Eva",b)]):sortType.sortRarity(a,b)} | ||
+ | sortType.sortAcc=function(a,b){return a[mod_key("Acc",a)]!=b[mod_key("Acc",b)]?sortOrder*(a[mod_key("Acc",a)]-b[mod_key("Acc",b)]):sortType.sortRarity(a,b)}; | ||
+ | sortType.sortArmor=function(a,b){return a[mod_key("Armor",a)]||b[mod_key("Armor",b)]?a[mod_key("Armor",a)]?b[mod_key("Armor",b)]?a[mod_key("Armor",a)]!=b[mod_key("Armor",b)]?sortOrder*(a[mod_key("Armor",a)]-b[mod_key("Armor",b)]):sortType.sortRarity(a,b):-1:1:0}; | ||
+ | sortType.sortRate=function(a,b){return a[mod_key("Rate",a)]!=b[mod_key("Rate",b)]?sortOrder*(a[mod_key("Rate",a)]-b[mod_key("Rate",b)]):sortType.sortRarity(a,b)}; | ||
+ | sortType.sortProtime=function (a,b){return a.productionTime=="N/A"&&b.productionTime=="N/A"?0:a.productionTime=="N/A"?1:b.productionTime=="N/A"?-1:a.productionTime!=b.productionTime?sortOrder*(a.productionTime>b.productionTime?1:-1):sortType.sortRarity(a,b)} | ||
+ | |||
+ | function sortStatusChange(obj){ | ||
+ | if(obj==lastSort&&obj.dataset.sortOrder=="desc"){$(obj).attr("data-sort-order","asc")}else{$(obj).attr("data-sort-order","desc")} | ||
+ | if(obj.dataset.sortOrder=="asc"){sortOrder=1}else{sortOrder=-1} | ||
+ | lastSort=obj; | ||
+ | page_switch() | ||
+ | } | ||
+ | index.on("click",function(){sortStatusChange(this)}); | ||
+ | //排序END | ||
+ | |||
function getURLParam(name) { //解析url参数 | function getURLParam(name) { //解析url参数 | ||
第250行: | 第589行: | ||
for (var i = 0; i < checker.length; i++) { | for (var i = 0; i < checker.length; i++) { | ||
if(check_status[i]=="1"){ | if(check_status[i]=="1"){ | ||
− | checker[i].checked = true | + | checker[i].checked = true; |
} else { | } else { | ||
checker[i].checked = false | checker[i].checked = false | ||
第257行: | 第596行: | ||
} | } | ||
− | |||
− | + | if(document.getElementById("section_0")){//判断是否为移动前端 | |
− | + | document.getElementById("cardMode").checked = true;} | |
− | + | sortList.sort(function(a,b){if(b.timeStamp != a.timeStamp){return b.timeStamp - a.timeStamp};return b.id - a.id}) | |
− | + | apply_filter(); | |
+ | $(function(){if(getURLParam("filter")){decode_checker(decoded)};if (getURLParam("intext")) {inputText.value = getURLParam("intext")};apply_filter()}); | ||
− | + | window.apply_filter = function(){apply_filter()} | |
− | |||
− | |||
− | |||
− | |||
− | function apply_filter(){//筛选、排序函数 | + | function apply_filter(debug,debugdata){//筛选、排序函数 |
pushlist=new Array(); | pushlist=new Array(); | ||
+ | if(debug==true){pushlist=debugdata}else{ | ||
for (var i = 0; i < sortList.length; i++) { | for (var i = 0; i < sortList.length; i++) { | ||
if(filter_box(sortList[i])){ | if(filter_box(sortList[i])){ | ||
+ | |||
pushlist.push(sortList[i]) | pushlist.push(sortList[i]) | ||
} | } | ||
− | }; | + | };} |
var pages; | var pages; | ||
− | switch($(' | + | switch($('.per-page')[0].selectedIndex){ |
case 0:pages = Math.ceil(pushlist.length/50);break; | case 0:pages = Math.ceil(pushlist.length/50);break; | ||
case 1:pages = Math.ceil(pushlist.length/100);break; | case 1:pages = Math.ceil(pushlist.length/100);break; | ||
第284行: | 第621行: | ||
case 3:pages = Math.ceil(pushlist.length/500);break; | case 3:pages = Math.ceil(pushlist.length/500);break; | ||
} | } | ||
− | if (pages == 1) {$(" | + | if (pages == 1) {$(".PrevPage,.NextPage").css('visibility',"hidden")}else{$(".PrevPage").css('visibility',"hidden");$(".NextPage").css('visibility',"visible")} |
− | $( | + | if(pages != 0){$(".cur-page option").remove();for (var i = 0; i < pages; i++) {$('.cur-page').append(`\<option\>${i+1}\<\/option\>`)};}else{$(".cur-page option").remove();$('.cur-page').append(`\<option\>1\<\/option\>`);} |
− | + | ||
− | + | // $('.cur-page option')[0].selected = true; | |
− | + | let opts = $('.cur-page option'); let len = opts.length; opts[0].selected = true; opts[len/2].selected = true; | |
− | + | $(".resultBox").text(`共${pushlist.length}个`); | |
− | + | if (pushlist.length == 0) {$("#position-marker").html(emptydiv);return pushlist} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
page_switch(); | page_switch(); | ||
//最终输出函数 | //最终输出函数 | ||
第305行: | 第633行: | ||
function page_switch(){ | function page_switch(){ | ||
+ | pushlist.sort(function(a,b){return sortType[lastSort.id](a,b)}); | ||
var splitList = new Array(); | var splitList = new Array(); | ||
var len; | var len; | ||
− | switch($(' | + | switch($('.per-page')[0].selectedIndex){ |
case 0:len=50;break; | case 0:len=50;break; | ||
case 1:len=100;break; | case 1:len=100;break; | ||
第313行: | 第642行: | ||
case 3:len=500;break; | case 3:len=500;break; | ||
} | } | ||
− | var cPage = $(" | + | var cPage = $(".cur-page")[0].selectedIndex; |
for (var i = 0; i < len; i++) { | for (var i = 0; i < len; i++) { | ||
− | if(!pushlist | + | if(!pushlist[i+cPage*len]){break}else{splitList.push(pushlist[i+cPage*len])} |
} | } | ||
− | |||
parse_list(splitList) | parse_list(splitList) | ||
+ | //console.log(window.DollsData.filter(function(e){return pushlist.indexOf(e)==-1})) | ||
} | } | ||
− | function change_page(){ | + | function change_page(obj){ |
− | var cSel = $(" | + | var cSel = $(".cur-page")[0].selectedIndex; |
− | if( | + | if(obj.className=="NextPage"){cSel++}else if(obj.className=="PrevPage"){cSel--} |
− | $(" | + | let len = $(".cur-page option").length; |
− | + | $(".cur-page option")[cSel].selected = true; | |
+ | $(".cur-page option")[cSel+len/2].selected = true; | ||
+ | var cLen = len/2-1; | ||
switch(cSel){ | switch(cSel){ | ||
− | case 0:$(" | + | case 0:$(".PrevPage").css('visibility',"hidden");$(".NextPage").css('visibility',"visible");break; |
− | case cLen:$(" | + | case cLen:$(".PrevPage").css('visibility',"visible");$(".NextPage").css('visibility',"hidden");break; |
+ | default:$(".PrevPage,.NextPage").css('visibility',"visible");break; | ||
} | } | ||
page_switch(); | page_switch(); | ||
+ | } | ||
+ | |||
+ | $(".PrevPage,.NextPage").on("click",function(){change_page(this)}); | ||
+ | $(".cur-page").on("change",function(){$(".cur-page").prop("selectedIndex", this.selectedIndex);change_page(this)}); | ||
+ | $(".per-page").on("change",function(){$(".per-page").prop("selectedIndex", this.selectedIndex);apply_filter()}); | ||
+ | |||
+ | function debug_marker(key,data){ | ||
+ | if(!data.error){return ""}else if(!!data.error[key]){return `class="${data.error[key]}"`} | ||
+ | return ""; | ||
+ | } | ||
+ | function posDet(tiles){ | ||
+ | var pos=new Object; | ||
+ | for (var i = 0; i < tiles.length; i++) { | ||
+ | for (var j = 0; j < tiles[i].length; j++) { | ||
+ | if(tiles[i][j]==2){pos.x=i;pos.y=j;return pos;break} | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | function offsetArray(deltaX,deltaY,targetArray){ | ||
+ | var transArray = [[0,0,0],[0,0,0],[0,0,0]]; | ||
+ | var count=0; | ||
+ | for (var i = 0; i < targetArray.length; i++) { | ||
+ | transArray[i+deltaX]=new Array(); | ||
+ | for (var j = 0; j < targetArray[i].length; j++) { | ||
+ | transArray[i+deltaX][j+deltaY]=targetArray[i][j]; | ||
+ | } | ||
+ | } | ||
+ | return transArray | ||
+ | } | ||
+ | function tileDiff(pushdata) { | ||
+ | var tCom = pushdata.tiles.split(",") | ||
+ | var newArr=[] | ||
+ | while(tCom.length) newArr.push(tCom.splice(0,3)) | ||
+ | tCom = newArr;newArr=[]; | ||
+ | var tOut = pushdata.tilesMod.split(",") | ||
+ | while(tOut.length) newArr.push(tOut.splice(0,3)) | ||
+ | tOut = newArr; | ||
+ | var temp = offsetArray(posDet(tOut).x-posDet(tCom).x,posDet(tOut).y-posDet(tCom).y,tCom); | ||
+ | var final=[]; | ||
+ | for (var i = 0; i < 3; i++) { | ||
+ | for (var j = 0; j < 3; j++) { | ||
+ | if(parseInt(tOut[i][j])!=parseInt(temp[i][j])&&parseInt(tOut[i][j])==1){final.push(3)}else{final.push(parseInt(tOut[i][j]))}; | ||
+ | } | ||
+ | } | ||
+ | return final | ||
} | } | ||
第336行: | 第713行: | ||
var htmlLine = "",output = ""; | var htmlLine = "",output = ""; | ||
var ministat = document.getElementById("iconOnly"); | var ministat = document.getElementById("iconOnly"); | ||
+ | |||
if (ministat.checked==true){//小图标模式 | if (ministat.checked==true){//小图标模式 | ||
for (var i in pushdata) { | for (var i in pushdata) { | ||
− | var line = `\<div class\="TDavatar rare${pushdata[i] | + | let avatarurl = new URL(pushdata[i][mod_key('avatar', pushdata[i])]); |
+ | if(mod_key("mod",pushdata[i])){var url_hash = pushdata[i].url+"#MOD3"}else{var url_hash = pushdata[i].url} | ||
+ | var line = `\<div class\="TDavatar rare${pushdata[i][mod_key("rarity",pushdata[i])]}" style=""\>\<a href\="${url_hash}" title="${pushdata[i].nameIngame}"\>\<img alt="${pushdata[i].nameIngame}" src="${avatarurl.pathname}" width="100" height="100" \>\<\/a\>\<\/div\>` | ||
htmlLine += line; | htmlLine += line; | ||
} | } | ||
− | output = `<table id="miniTdolltable" style=""><tbody><tr><td>${htmlLine}</td></tr></tbody></table>` | + | output = `<table id="miniTdolltable" style=""><tbody><tr><td>${htmlLine}\<\/td><\/tr><\/tbody><\/table>` |
} else {// 表格模式 | } else {// 表格模式 | ||
for (var i in pushdata) { | for (var i in pushdata) { | ||
− | var tileCond = pushdata[i].tiles.split(","); | + | let avatarurl = new URL(pushdata[i][mod_key('avatar', pushdata[i])]); |
+ | if(mod_key("mod",pushdata[i])){var tileCond = tileDiff(pushdata[i])}else{var tileCond = pushdata[i].tiles.split(",")}; | ||
+ | if(!pushdata[i].tileEffect2){var tile_effects = `${pushdata[i].tileEffect1} \+${pushdata[i][mod_key("Effect1",pushdata[i])]}`}else{var tile_effects = `${pushdata[i].tileEffect1} \+${pushdata[i][mod_key("Effect1",pushdata[i])]}<BR>${pushdata[i].tileEffect2} \+${pushdata[i][mod_key("Effect2",pushdata[i])]}`} | ||
+ | if(mod_key("mod",pushdata[i])){var url_hash = pushdata[i].url+"#MOD3"}else{var url_hash = pushdata[i].url} | ||
var line = `<tr class="tdollqueryline"> | var line = `<tr class="tdollqueryline"> | ||
− | <td>No.${pushdata[i].id}</td> | + | <td>No.${pushdata[i].id}<\/td> |
− | <td><b><a href="${ | + | <td><b><a href="${url_hash}" title="${pushdata[i].nameIngame}">${pushdata[i].nameIngame}<\/a><\/b><\/td> |
− | <td><div class="TDavatar rare${pushdata[i] | + | <td ${debug_marker("e3",pushdata[i])}><div class="TDavatar rare${pushdata[i][mod_key("rarity",pushdata[i])]}"><a href="${url_hash}" title="${pushdata[i].nameIngame}"><img alt="${pushdata[i].nameIngame}" src="${avatarurl.pathname}" width="100" height="100"><\/a><\/div><\/td> |
− | <td><a href="#${pushdata[i].tdollClass}" title="点击筛选${pushdata[i].type}人形"><img alt="点击筛选${pushdata[i].type}人形" src="${pushdata[i]. | + | <td><a href="#${pushdata[i].tdollClass}" title="点击筛选${pushdata[i].type}人形"><img alt="点击筛选${pushdata[i].type}人形" src="/images/${typeIcons[pushdata[i].type]}/图标-${pushdata[i].type}.png" width="48" height="27"><\/a><br>${pushdata[i].type}<\/td> |
− | <td>${pushdata[i] | + | <td ${debug_marker("e5",pushdata[i])}>${pushdata[i][mod_key("Hp",pushdata[i])]}<br>(${pushdata[i][mod_key("Hp",pushdata[i])] * 5})<\/td><td ${debug_marker("e6",pushdata[i])}>${pushdata[i][mod_key("Atk",pushdata[i])]}<\/td><td ${debug_marker("e7",pushdata[i])}>${pushdata[i][mod_key("Rate",pushdata[i])]}<\/td><td ${debug_marker("e8",pushdata[i])}>${pushdata[i][mod_key("Acc",pushdata[i])]}<\/td><td ${debug_marker("e9",pushdata[i])}>${pushdata[i][mod_key("Eva",pushdata[i])]}<\/td><td ${debug_marker("e10",pushdata[i])}>${pushdata[i][mod_key("Armor",pushdata[i])]}<\/td><td ${debug_marker("e11",pushdata[i])}>${pushdata[i].productionTime} |
− | </td><td class="tiles">${pushdata[i] | + | <\/td><td class="tiles" ${debug_marker("e13",pushdata[i])}><div><div>${pushdata[i][mod_key("affect",pushdata[i])]}<br>${tile_effects}<\/div><table class="tilesTable"><tbody> |
− | <td class="color${tileCond[0]}"></td> | + | <tr><td class="color${tileCond[0]}"><\/td><td class="color${tileCond[1]}"><\/td><td class="color${tileCond[2]}"><\/td><\/tr> |
− | <td class="color${tileCond[1]}"></td> | + | <tr><td class="color${tileCond[3]}"><\/td><td class="color${tileCond[4]}"><\/td><td class="color${tileCond[5]}"><\/td><\/tr> |
− | <td class="color${tileCond[2]}"></td></tr> | + | <tr><td class="color${tileCond[6]}"><\/td><td class="color${tileCond[7]}"><\/td><td class="color${tileCond[8]}"><\/td><\/tr><\/tbody><\/table><\/div><\/td> |
− | <tr><td class="color${tileCond[3]}"></td> | + | <td>${pushdata[i].obtainMethod}<\/td><\/tr>` |
− | <td class="color${tileCond[4]}"></td> | ||
− | <td class="color${tileCond[5]}"></td></tr> | ||
− | <tr><td class="color${tileCond[6]}"></td> | ||
− | <td class="color${tileCond[7]}"></td> | ||
− | <td class="color${tileCond[8]}"></td></tr></tbody></table></ | ||
− | |||
− | <td>${pushdata[i]. | ||
htmlLine += line; | htmlLine += line; | ||
} | } | ||
− | output = `<table id="Tdolltable" class="stattable | + | output = `<table id="Tdolltable" class="stattable logo${document.querySelector("#cardMode").checked?" cardMode":""}" style="text-align:center;mid-width:300px;width:100%"> |
− | <thead><tr><th style="width: 44px;min-width: 44px;">编号</th><th style="width: 70px;min-width: 70px;">枪名</th><th style="width: | + | <thead><tr><th style="width: 44px;min-width: 44px;">编号<\/th><th style="width: 70px;min-width: 70px;">枪名<\/th><th style="width: 50px;min-width: 50px;">头像<br>(稀有度)<\/th><th style="width: 50px;min-width: 50px;">枪种<\/th><th>生命<br>(5编制)<\/th><th>伤害<\/th><th>射速<\/th><th>命中<\/th><th>回避<\/th><th>护甲<\/th><th>建造时间<\/th><th>影响格&有效枪种&影响效果<br>(5编制)<\/th><th style="width:130px;min-width:130px;">获得方式<\/th><\/tr><\/thead> |
− | + | <tbody>${htmlLine}<\/tbody> | |
− | <tbody>${htmlLine}</tbody> | + | <\/table>` |
− | </table>` | ||
} | } | ||
− | + | $("#position-marker").html(output); | |
} | } | ||
第377行: | 第752行: | ||
var get_checker_box = box.parentNode.getElementsByTagName("input"); | var get_checker_box = box.parentNode.getElementsByTagName("input"); | ||
for(var i = 0;i<get_checker_box.length;i++){ | for(var i = 0;i<get_checker_box.length;i++){ | ||
+ | if(get_checker_box[i].dataset.freeze){continue} | ||
if(get_checker_box[i].checked){get_checker_box[i].checked=false}else{get_checker_box[i].checked=true} | if(get_checker_box[i].checked){get_checker_box[i].checked=false}else{get_checker_box[i].checked=true} | ||
} | } | ||
第385行: | 第761行: | ||
var get_checker_box = box.parentNode.getElementsByTagName("input"); | var get_checker_box = box.parentNode.getElementsByTagName("input"); | ||
for(var i = 0;i<get_checker_box.length;i++){ | for(var i = 0;i<get_checker_box.length;i++){ | ||
+ | if(get_checker_box[i].dataset.freeze){continue} | ||
get_checker_box[i].checked=false | get_checker_box[i].checked=false | ||
} | } | ||
apply_filter(); | apply_filter(); | ||
} | } | ||
+ | function rarityDisable(box){ | ||
+ | var modstat = box.checked; | ||
+ | var target = document.querySelector('#rarity6'); | ||
+ | if (!modstat){target.checked = false;target.parentNode.classList.add("unable") | ||
+ | }else{target.parentNode.classList.remove("unable")} | ||
+ | } | ||
+ | |||
+ | $('.clearSelect').on("click",function(){clearSelect(this)}); | ||
+ | $('.invertSelect').on("click",function(){invertSelect(this)}); | ||
+ | $('#TDollQuery button#clearInput').on("click",function(){clearItem();apply_filter();}); | ||
+ | $('#buttonContainer>span>a').on("click",function(){var tilesArea = document.querySelectorAll("#effectarea td");var tilesSelf = document.querySelectorAll("#selfpos td");for(var i in tilesArea){tilesArea[i].className=""};for(var i in tilesSelf){tilesSelf[i].className="active"};clearSelect(this.parentNode)}) | ||
+ | $('#MOD3Data').on("click",function(){rarityDisable(this);apply_filter();}) | ||
function clearItem(){inputText.value = ""} //清除输入框内容 | function clearItem(){inputText.value = ""} //清除输入框内容 | ||
第405行: | 第794行: | ||
} | } | ||
} | } | ||
− | + | function timeS2S(tStr){return Date.parse("1970-1-1 "+tStr+" GMT")} | |
function text_check(query){ //文本输入框判断(现仅实现判断枪名) | function text_check(query){ //文本输入框判断(现仅实现判断枪名) | ||
if (!inputText){return true}; | if (!inputText){return true}; | ||
− | var a = new RegExp(inputText.value,"i").test(query.nameIngame); | + | var prefet = inputText.value.substr(inputText.value.indexOf("t:")+2,4); |
+ | if(inputText.value.indexOf("t:")==0&&query.productionTime.split(":").length>1&&prefet.length>1){ | ||
+ | var time = prefet+":00"; | ||
+ | time=time.slice(0,time.indexOf(":")-2)+":"+time.slice(time.indexOf(":")-2) | ||
+ | time.indexOf(":")==0?time="0"+time:time; | ||
+ | var a = Math.abs(timeS2S(query.productionTime)-timeS2S(time))<60000; | ||
+ | }else{ | ||
+ | var a = new RegExp(inputText.value,"i").test(query.nameIngame); | ||
+ | } | ||
if (a) { | if (a) { | ||
return true | return true | ||
第425行: | 第822行: | ||
if (nt == 0){return true} | if (nt == 0){return true} | ||
else { | else { | ||
− | if(rCheck[query | + | if(rCheck[query[mod_key("rarity",query)]]){return true} else {return false} |
} | } | ||
} | } | ||
第440行: | 第837行: | ||
else { | else { | ||
if(tCheck[query.tdollClass]){return true} else {return false} | if(tCheck[query.tdollClass]){return true} else {return false} | ||
+ | } | ||
+ | } | ||
+ | |||
+ | function tileAffect_check(query){ //影响格对象判断 | ||
+ | var affectText = query[mod_key("affect",query)].split('/'); | ||
+ | var keyword = {MGaff:"机枪",RFaff:"步枪",ARaff:"突击步枪",HGaff:"手枪",SGaff:"霰弹枪",SMGaff:"冲锋枪",ALLaff:"全体"}; | ||
+ | var taCheck = new Array(); | ||
+ | var taNum = 0; | ||
+ | for (var i in keyword){ | ||
+ | if(document.getElementById(i).checked){taNum++} | ||
+ | for (var j=0;j<affectText.length;j++){ | ||
+ | if(affectText[j].lastIndexOf(keyword[i])==0){taCheck.push(i)} | ||
+ | } | ||
+ | } | ||
+ | if (taNum==0){return true} | ||
+ | else { | ||
+ | for(var i=0;i<taCheck.length;i++){if(document.getElementById(taCheck[i]).checked){return true}};return false; | ||
} | } | ||
} | } | ||
第529行: | 第943行: | ||
function tiles_check(query){//影响格查找人形 | function tiles_check(query){//影响格查找人形 | ||
if(document.querySelectorAll("table#effectarea td.active").length==0){return true} | if(document.querySelectorAll("table#effectarea td.active").length==0){return true} | ||
− | var tdoll_tile_data = query | + | var tdoll_tile_data = query[mod_key("tiles",query)].split(',') |
+ | for (var i = 0; i < tdoll_tile_data.length; i++) { | ||
+ | if(tdoll_tile_data[i]==3){tdoll_tile_data[i]="1"} | ||
+ | } | ||
var tdoll_tile= new Array(3); | var tdoll_tile= new Array(3); | ||
var count = 0 | var count = 0 | ||
第553行: | 第970行: | ||
/ 影响格查询部分 END / | / 影响格查询部分 END / | ||
/----------------------*/ | /----------------------*/ | ||
− | + | function checkMethod(element,testString){ | |
+ | var strprobe=element.split("/"); | ||
+ | var k=0; | ||
+ | for (var i = 0;i<strprobe.length;i++){ | ||
+ | if(testString.indexOf(strprobe[i])>-1){k++} | ||
+ | } | ||
+ | if(k>0){return true}else{return false} | ||
+ | } | ||
function obtainMethod_check(query){ //获取方式 | function obtainMethod_check(query){ //获取方式 | ||
− | var checkStat = | + | var checkStat = document.querySelectorAll("#obtainWays input") |
− | + | var j = 0;var k = 0; | |
− | var j = 0; | + | for (var i = 0;i<checkStat.length;i++){if(checkStat[i].checked==true){if(checkMethod(checkStat[i].labels[0].title,query.obtainMethod)){j++}}else{k++}} |
− | for (var i = 0;i<checkStat.length;i++){if(checkStat[i]== | + | if(j>0||k==checkStat.length){return true}else{return false} |
− | |||
− | |||
− | |||
− | if( | ||
− | |||
} | } | ||
function filter_box(cond){ //筛选条件汇总 | function filter_box(cond){ //筛选条件汇总 | ||
− | return mod_check(cond)&&text_check(cond)&&rarity_check(cond)&&type_check(cond)&&tiles_check(cond)&&obtainMethod_check(cond); | + | return tileAffect_check(cond)&&mod_check(cond)&&text_check(cond)&&rarity_check(cond)&&type_check(cond)&&tiles_check(cond)&&obtainMethod_check(cond); |
} | } | ||
第580行: | 第999行: | ||
$("#inputQuery").on('input propertychange',debounce(250, function (){apply_filter();})); | $("#inputQuery").on('input propertychange',debounce(250, function (){apply_filter();})); | ||
+ | $('.filter_item').on("change",function(){apply_filter()}); | ||
+ | window.runDiagnose = function (){ | ||
+ | var diagnose_result=new Array(); | ||
+ | for (var k in window.DollsData) { | ||
+ | var test = window.DollsData[k]; | ||
+ | test.error=new Object; | ||
+ | var error = 0; | ||
+ | if(test.avatar.indexOf("default")>-1){test.error.e3="error";error++} | ||
+ | if(!test.baseHp){test.error.e5="error";error++} | ||
+ | if(!test.baseAtk){test.error.e6="error";error++} | ||
+ | if(!test.baseRate){test.error.e7="error";error++} | ||
+ | if(!test.baseAcc){test.error.e8="error";error++} | ||
+ | if(!test.baseEva){test.error.e9="error";error++} | ||
+ | if(!test.baseArmor){if(test.tdollClass=="SG"){test.error.e10="error";error++}} | ||
+ | if(test.mod=="1"){ | ||
+ | if(test.avatarMod.indexOf("default")>-1){test.error.e3="error";error++} | ||
+ | if(!test.modHp){test.error.e5="error";error++} | ||
+ | if(!test.modAtk){test.error.e6="error";error++} | ||
+ | if(!test.modRate){test.error.e7="error";error++} | ||
+ | if(!test.modAcc){test.error.e8="error";error++} | ||
+ | if(!test.modEva){test.error.e9="error";error++} | ||
+ | if(!test.modArmor){if(test.tdollClass=="SG"){test.error.e10="error";error++}} | ||
+ | } | ||
+ | if(test.obtainBuild==1&&test.productionTime=="N/A"){test.error.e11="error";error++} | ||
+ | if(test.tileEffect1.indexOf("%")>-1||test.tileEffect1Time==""||test.tileEffect1Time.indexOf("%%")>-1){test.error.e13="error";error++} | ||
+ | if(test.tileEffect2!=""){if(test.tileEffect2.indexOf("%")>-1||test.tileEffect2Time==""||test.tileEffect2Time.indexOf("%%")>-1){test.error.e13="error";error++}} | ||
+ | if (error==0){continue}else{diagnose_result.push(test)} | ||
+ | } | ||
+ | console.log(diagnose_result) | ||
+ | apply_filter(true,diagnose_result) | ||
+ | } | ||
+ | |||
+ | }) | ||
+ | function focusTime(){ | ||
+ | var a = document.querySelector("#inputQuery"); | ||
+ | a.value="t:(四位时间)"; | ||
+ | a.focus() | ||
+ | a.setSelectionRange(2, a.value.length) | ||
+ | } | ||
− | </script> | + | </script></includeonly> |