Browse Source

增加排序的模式选择

tags/v7.5
枫谷剑仙 5 years ago
parent
commit
3186daeff7
5 changed files with 65 additions and 9 deletions
  1. +3
    -0
      languages/zh.css
  2. +2
    -0
      script-json_data.js
  3. +45
    -8
      script.js
  4. +1
    -0
      solo.html
  5. +14
    -1
      style.css

+ 3
- 0
languages/zh.css View File

@@ -307,6 +307,9 @@
.search-box .include-super-awoken-label::after{
content: "包括超觉醒";
}
.search-box .show-official-awoken-sorting-label::after{
content: "使用官方觉醒排序";
}
.search-box .sort-div::before{
content: "排序:";
}


+ 2
- 0
script-json_data.js View File

@@ -48,6 +48,8 @@ const equivalent_awoken = [
{small:19,big:53,times:2}, //手指
{small:21,big:56,times:2}, //SB
];
//官方的觉醒排列顺序
const official_awoken_sorting = [21,19,43,45,10,11,12,13,49,56,53,61,50,52,68,69,70,28,27,48,62,57,58,60,59,54,55,14,15,16,17,18,29,20,44,51,22,23,24,25,26,32,31,33,34,4,5,6,7,8,35,36,37,38,1,2,3,46,47,39,40,41,42,65,66,67,9,71,72,30,64,63];
//排序程序列表
const sort_function_list = [
{tag:"sort_none",name:"无",function:()=>0},


+ 45
- 8
script.js View File

@@ -1155,9 +1155,12 @@ function initialize() {

//const s_rare = s_rareLi.map(li=>li.querySelector(".rare-check")); //checkbox集合

const s_awokensItems = Array.from(searchBox.querySelectorAll(".awoken-div .awoken-count"));
const s_awokensIcons = s_awokensItems.map(it => it.querySelector(".awoken-icon"));
const s_awokensCounts = s_awokensItems.map(it => it.querySelector(".count"));
const s_awokensDiv = searchBox.querySelector(".awoken-div");
const s_awokensUl = s_awokensDiv.querySelector(".awoken-ul");
const s_awokensLi = Array.from(s_awokensUl.querySelectorAll(".awoken-count"));
const s_awokensIcons = s_awokensLi.map(li => li.querySelector(".awoken-icon"));
s_awokensUl.originalSorting = s_awokensIcons.map(icon => parseInt(icon.getAttribute("data-awoken-icon"), 10));
const s_awokensCounts = s_awokensLi.map(li => li.querySelector(".count"));

const searchMonList = searchBox.querySelector(".search-mon-list"); //搜索结果列表
searchMonList.originalHeads = null; //用于存放原始搜索结果
@@ -1168,14 +1171,48 @@ function initialize() {
toggleDomClassName(this, "only-display-can-assist", true, searchMonList);
};

const s_sawokenDiv = searchBox.querySelector(".sawoken-div");

const s_sawokens = Array.from(s_sawokenDiv.querySelectorAll(".sawoken-check"));
const s_sawokensDiv = searchBox.querySelector(".sawoken-div");
const s_sawokensUl = s_sawokensDiv.querySelector(".sawoken-ul");
const s_sawokensLi = Array.from(s_sawokensUl.querySelectorAll(".awoken-count"));
s_sawokensUl.originalSorting = s_sawokensLi.map(li => parseInt(li.querySelector(".awoken-icon").getAttribute("data-awoken-icon"), 10));

const s_sawokens = s_sawokensLi.map(li => li.querySelector(".sawoken-check"));
const s_includeSuperAwoken = searchBox.querySelector("#include-super-awoken"); //搜索超觉醒
s_includeSuperAwoken.onchange = function() {
toggleDomClassName(this, className_displayNone, true, s_sawokenDiv);
toggleDomClassName(this, className_displayNone, true, s_sawokensDiv);
};


const s_showOfficialAwokenSorting = searchBox.querySelector("#show-official-awoken-sorting"); //显示官方排序的觉醒
s_showOfficialAwokenSorting.onchange = function(){
let fragmentAwoken = document.createDocumentFragment();
let fragmentSawoken = document.createDocumentFragment();
const awokenSorting = this.checked ? official_awoken_sorting : s_awokensUl.originalSorting;
const sawokenSorting = this.checked ? official_awoken_sorting : s_sawokensUl.originalSorting;
awokenSorting.forEach(id=>fragmentAwoken.appendChild(
s_awokensLi.find(li=>parseInt(li.querySelector(".awoken-icon").getAttribute("data-awoken-icon"), 10) == id)
));
sawokenSorting.forEach(id=>fragmentSawoken.appendChild(
s_sawokensLi.find(li=>parseInt(li.querySelector(".awoken-icon").getAttribute("data-awoken-icon"), 10) == id)
));
const officialAwokenSorting_className = "official-awoken-sorting";
if (this.checked)
{
s_awokensUl.classList.add(officialAwokenSorting_className);
s_sawokensUl.classList.add(officialAwokenSorting_className);
}else
{
s_awokensUl.classList.remove(officialAwokenSorting_className);
s_sawokensUl.classList.remove(officialAwokenSorting_className);
}
s_awokensUl.appendChild(fragmentAwoken);
s_sawokensUl.appendChild(fragmentSawoken);
};
s_showOfficialAwokenSorting.onchange();


function search_awokenAdd1() {
const countDom = this.parentNode.querySelector(".count");
let count = parseInt(countDom.value, 10);
@@ -1209,7 +1246,7 @@ function initialize() {
s_awokensCounts.forEach(t => {
t.value = 0;
});
s_awokensItems.forEach(t => {
s_awokensLi.forEach(t => {
t.classList.add("zero");
});
};
@@ -1353,7 +1390,7 @@ function initialize() {
s_awokensCounts.forEach(t => {
t.value = 0;
});
s_awokensItems.forEach(t => {
s_awokensLi.forEach(t => {
t.classList.add("zero");
});
// 这些觉醒的选项干脆都不清除


+ 1
- 0
solo.html View File

@@ -467,6 +467,7 @@ var formation = new Formation(teamsCount,6);
<div class="awoken-option">
<input type="checkbox" class="config-checkbox-ipt" name="consider-equivalent-awoken" id="consider-equivalent-awoken" checked><label class="config-checkbox-lbl consider-equivalent-awoken-label" for="consider-equivalent-awoken"><div class="config-checkbox-lbl-cicle"></div></label>
<input type="checkbox" class="config-checkbox-ipt" name="include-super-awoken" id="include-super-awoken"><label class="config-checkbox-lbl include-super-awoken-label" for="include-super-awoken"><div class="config-checkbox-lbl-cicle"></div></label>
<input type="checkbox" class="config-checkbox-ipt" name="show-official-awoken-sorting" id="show-official-awoken-sorting"><label class="config-checkbox-lbl show-official-awoken-sorting-label" for="show-official-awoken-sorting"><div class="config-checkbox-lbl-cicle"></div></label>
</div>
<ul class="awoken-ul">
<li class="awoken-count zero"><button class="awoken-icon" data-awoken-icon="43"></button><label class="count-symbol"><input type="button" class="count" value="0" /></label></li><!--7c-->


+ 14
- 1
style.css View File

@@ -1160,7 +1160,7 @@ ul{
}*/
.search-box .awoken-div .awoken-option
{
display: inline-block;
display: inline;
}
.search-box .awoken-div .awoken-clear::before,
.search-box .sawoken-div .sawoken-clear::before
@@ -1173,6 +1173,10 @@ ul{
padding: 0;
float: right;
}
.awoken-div .awoken-ul.official-awoken-sorting
{
width: 620px;
}
.awoken-ul .awoken-count
{
font-size: 16px;
@@ -1229,12 +1233,21 @@ ul{
/*.search-box .sawoken-div::before{
content: "超觉醒";
}*/
.sawoken-div .sawoken-ul.official-awoken-sorting
{
width: 350px;
}
.sawoken-div .sawoken-ul li label{
opacity: var(--search-icon-unchecked);
}
.sawoken-div .sawoken-ul input:checked+label{
opacity: 1;
}
.sawoken-div .sawoken-ul .awoken-count
{
margin-right: 5px;
margin-bottom: 5px;
}

.control-div button{
font-size: 20px;


Loading…
Cancel
Save