将字符串搜索,调整为全局函数

This commit is contained in:
枫谷剑仙 2021-04-07 21:15:29 +08:00
parent f14392d39c
commit f5f272e21f
2 changed files with 46 additions and 11 deletions

View File

@ -478,6 +478,41 @@ function searchCards(cards, attr1, attr2, fixMainColor, types, typeAndOr, rares,
cardsRange = cardsRange.filter(card => card.id); //去除Cards[0]
return cardsRange;
}
function searchByString(str)
{ // 考虑了一下onlyInTag被废弃了因为和游戏内搜索不符
str = str.trim();
if (str.length>0)
{
return Cards.filter(card =>
{
const names = [card.name];
if (card.otLangName)
{
names.push(...Object.values(card.otLangName));
}
const tags = card.altName.concat();
if (card.otTags)
{
tags.push(...card.otTags);
}
return tags.some(astr=>astr.toLowerCase().includes(str.toLowerCase())) ||
names.some(astr=>astr.toLowerCase().includes(str.toLowerCase()));
}
);
}else
{
return [];
}
}
function copyString(input)
{
input.focus(); //设input为焦点
input.select(); //选择全部
if (document.execCommand('copy')) {
document.execCommand('copy');
}
//input.blur(); //取消焦点
}
//产生一个怪物头像
function createCardA() {
const cdom = document.createElement("a");

View File

@ -1217,7 +1217,7 @@ function initialize() {
str = str.trim();
if (str.length>0)
{
showSearch(Cards.filter(card =>
return Cards.filter(card =>
{
const names = [card.name];
if (card.otLangName)
@ -1232,7 +1232,10 @@ function initialize() {
return tags.some(astr=>astr.toLowerCase().includes(str.toLowerCase())) ||
names.some(astr=>astr.toLowerCase().includes(str.toLowerCase()));
}
));
);
}else
{
return [];
}
}
function copyString(input)
@ -1263,7 +1266,7 @@ function initialize() {
copyBtn.onclick = function(){copyString(ipt)};
const searchBtn = li.appendChild(document.createElement("button"));
searchBtn.className = "string-search";
searchBtn.onclick = function(){searchByString(ipt.value)};
searchBtn.onclick = function(){showSearch(searchByString(ipt.value))};
});
fragment.appendChild(ul_original);
}
@ -1279,7 +1282,7 @@ function initialize() {
ipt.readOnly = true;
const searchBtn = li.appendChild(document.createElement("button"));
searchBtn.className = "string-search";
searchBtn.onclick = function(){searchByString(ipt.value)};
searchBtn.onclick = function(){showSearch(searchByString(ipt.value))};
});
fragment.appendChild(ul_additional);
}
@ -1856,13 +1859,10 @@ function initialize() {
}
monstersID.onchange = idChange;
monstersID.onkeydown = function(e) {
//如果键入回车,则执行字符串搜索
if (e.key == "Enter")
//如果键入回车,字符串长度大于0且不是数字则执行字符串搜索
if (e.key == "Enter" && this.value.length > 0 && !/^\d+$/.test(this.value))
{
if (this.value.length > 0 && !/^\d+$/.test(this.value)) //如果字符串长度大于0且不是数字则进行字符串搜索
{
searchByString(this.value);
}
showSearch(searchByString(this.value));
}
}
//输入id数字即时更新的开关
@ -1877,7 +1877,7 @@ function initialize() {
//字符串搜索
btnSearchByString.onclick = function() {
searchByString(monstersID.value);
showSearch(searchByString(monstersID.value));
};
//觉醒
const monEditAwokensRow = settingBox.querySelector(".row-mon-awoken");