“无”排序可以恢复默认排序
This commit is contained in:
parent
81553ebde1
commit
d5ca4a122e
|
@ -13,7 +13,7 @@ function findFullSkill(subSkill){
|
||||||
|
|
||||||
//返回flag里值为true的数组,如[1,4,7]
|
//返回flag里值为true的数组,如[1,4,7]
|
||||||
function flags(num){
|
function flags(num){
|
||||||
return Array.from(new Array(32)).map((a,i)=>{return i;}).filter(i => num & (1 << i));
|
return Array.from({length:10},(n,i)=>i).filter(i => num & (1 << i));
|
||||||
}
|
}
|
||||||
|
|
||||||
//高级技能解释
|
//高级技能解释
|
||||||
|
@ -38,14 +38,6 @@ function parseSkillDescription(skill)
|
||||||
function typeN(i){return typeName[i || 0] || ("未知类型" + i);}
|
function typeN(i){return typeName[i || 0] || ("未知类型" + i);}
|
||||||
//返回觉醒名
|
//返回觉醒名
|
||||||
function awokenN(i){return awokenName[(i || 0)-1] || ("未知觉醒" + i);}
|
function awokenN(i){return awokenName[(i || 0)-1] || ("未知觉醒" + i);}
|
||||||
//从二进制的数字中获得布尔值数组
|
|
||||||
function getBooleanFromBinary(num,reverse=true)
|
|
||||||
{ /*num是输入的数字,2的N次方在2进制下表示1后面跟着N个0。
|
|
||||||
如果num和2的N次方同时存在某位1,则返回这个数,逻辑上转换为true。*/
|
|
||||||
let arr = num.toString(2).split("").map(c=>{return parseInt(c);});
|
|
||||||
if (reverse) arr.reverse();
|
|
||||||
return arr;
|
|
||||||
}
|
|
||||||
//从二进制的数字中获得有哪些内容
|
//从二进制的数字中获得有哪些内容
|
||||||
function getNamesFromBinary(num,dataArr)
|
function getNamesFromBinary(num,dataArr)
|
||||||
{ /*num是输入的数字,2的N次方在2进制下表示1后面跟着N个0。
|
{ /*num是输入的数字,2的N次方在2进制下表示1后面跟着N个0。
|
||||||
|
|
48
script.js
48
script.js
|
@ -826,6 +826,7 @@ function initialize()
|
||||||
});
|
});
|
||||||
|
|
||||||
const searchMonList = searchBox.querySelector(".search-mon-list"); //搜索结果列表
|
const searchMonList = searchBox.querySelector(".search-mon-list"); //搜索结果列表
|
||||||
|
searchMonList.originalHeads = null; //用于存放原始搜索结果
|
||||||
|
|
||||||
const s_awokensEquivalent = searchBox.querySelector("#consider-equivalent-awoken"); //搜索等效觉醒
|
const s_awokensEquivalent = searchBox.querySelector("#consider-equivalent-awoken"); //搜索等效觉醒
|
||||||
const s_canAssist = searchBox.querySelector("#can-assist"); //只搜索辅助
|
const s_canAssist = searchBox.querySelector("#can-assist"); //只搜索辅助
|
||||||
|
@ -842,9 +843,9 @@ function initialize()
|
||||||
const s_includeSuperAwoken = searchBox.querySelector("#include-super-awoken"); //搜索超觉醒
|
const s_includeSuperAwoken = searchBox.querySelector("#include-super-awoken"); //搜索超觉醒
|
||||||
s_includeSuperAwoken.onclick = function(){
|
s_includeSuperAwoken.onclick = function(){
|
||||||
if (this.checked)
|
if (this.checked)
|
||||||
s_sawokenDiv.classList.add("display-none");
|
s_sawokenDiv.classList.add("display-none");
|
||||||
else
|
else
|
||||||
s_sawokenDiv.classList.remove("display-none");
|
s_sawokenDiv.classList.remove("display-none");
|
||||||
};
|
};
|
||||||
|
|
||||||
function search_awokenAdd1()
|
function search_awokenAdd1()
|
||||||
|
@ -917,23 +918,15 @@ function initialize()
|
||||||
const createCardHead = editBox.createCardHead;
|
const createCardHead = editBox.createCardHead;
|
||||||
|
|
||||||
searchMonList.classList.add("display-none");
|
searchMonList.classList.add("display-none");
|
||||||
searchMonList.innerHTML = "";
|
searchMonList.innerHTML = ""; //清空旧的
|
||||||
if (searchArr.length>0)
|
if (searchArr.length>0)
|
||||||
{
|
{
|
||||||
let fragment = document.createDocumentFragment(); //创建节点用的临时空间
|
let fragment = document.createDocumentFragment(); //创建节点用的临时空间
|
||||||
|
//获取原始排序的头像列表
|
||||||
const sortIndex = parseInt(s_sortList.value,10);
|
searchMonList.originalHeads = searchArr.map(card=>createCardHead(card.id));
|
||||||
const reverse = s_sortReverse.checked;
|
//对头像列表进行排序
|
||||||
const sortFunction = sort_function_list[sortIndex].function;
|
const headsArray = sortHeadsArray(searchMonList.originalHeads);
|
||||||
searchArr.sort((card_a,card_b)=>{
|
headsArray.forEach(head=>fragment.appendChild(head));
|
||||||
let sortNumber = sortFunction(card_a,card_b);
|
|
||||||
if (reverse) sortNumber *= -1;
|
|
||||||
return sortNumber;
|
|
||||||
});
|
|
||||||
searchArr.forEach(function(card){
|
|
||||||
const cli = createCardHead(card.id);
|
|
||||||
fragment.appendChild(cli);
|
|
||||||
});
|
|
||||||
searchMonList.appendChild(fragment);
|
searchMonList.appendChild(fragment);
|
||||||
}
|
}
|
||||||
searchMonList.classList.remove("display-none");
|
searchMonList.classList.remove("display-none");
|
||||||
|
@ -1014,26 +1007,35 @@ function initialize()
|
||||||
t.checked = false;
|
t.checked = false;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
searchMonList.originalHeads = null;
|
||||||
searchMonList.innerHTML = "";
|
searchMonList.innerHTML = "";
|
||||||
};
|
};
|
||||||
|
|
||||||
const s_sortList = s_controlDiv.querySelector(".sort-list");
|
const s_sortList = s_controlDiv.querySelector(".sort-list");
|
||||||
const s_sortReverse = s_controlDiv.querySelector("#sort-reverse");
|
const s_sortReverse = s_controlDiv.querySelector("#sort-reverse");
|
||||||
//对搜索到的Cards重新排序
|
//对heads重新排序
|
||||||
function reSortCards()
|
function sortHeadsArray(heads)
|
||||||
{
|
{
|
||||||
const sortIndex = parseInt(s_sortList.value,10);
|
const sortIndex = parseInt(s_sortList.value,10);
|
||||||
const reverse = s_sortReverse.checked;
|
const reverse = s_sortReverse.checked;
|
||||||
|
let headsArray = heads.concat();
|
||||||
|
|
||||||
searchMonList.classList.add("display-none");
|
|
||||||
let fragment = document.createDocumentFragment(); //创建节点用的临时空间
|
|
||||||
let headsArray = Array.from(searchMonList.children);
|
|
||||||
headsArray.sort((head_a,head_b)=>{
|
headsArray.sort((head_a,head_b)=>{
|
||||||
let sortNumber = sort_function_list[sortIndex].function(head_a.card,head_b.card);
|
const card_a = head_a.card,card_b = head_b.card;
|
||||||
|
let sortNumber = sort_function_list[sortIndex].function(card_a,card_b);
|
||||||
if (reverse) sortNumber *= -1;
|
if (reverse) sortNumber *= -1;
|
||||||
return sortNumber;
|
return sortNumber;
|
||||||
});
|
});
|
||||||
headsArray.forEach(h=>fragment.appendChild(h));
|
|
||||||
|
return headsArray;
|
||||||
|
}
|
||||||
|
//对搜索到的Cards重新排序
|
||||||
|
function reSortCards()
|
||||||
|
{
|
||||||
|
searchMonList.classList.add("display-none");
|
||||||
|
let fragment = document.createDocumentFragment(); //创建节点用的临时空间
|
||||||
|
const headsArray = sortHeadsArray(searchMonList.originalHeads);
|
||||||
|
headsArray.forEach(head=>fragment.appendChild(head));
|
||||||
searchMonList.appendChild(fragment);
|
searchMonList.appendChild(fragment);
|
||||||
searchMonList.classList.remove("display-none");
|
searchMonList.classList.remove("display-none");
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue