diff --git a/languages/zh-CN.css b/languages/zh-CN.css index e3d2acb7..19d35e38 100644 --- a/languages/zh-CN.css +++ b/languages/zh-CN.css @@ -6,14 +6,20 @@ font-family: "Microsoft Yahei","Source Han Sans",Arial, Helvetica, sans-serif; font-weight: bold; } -.search-box .control-div .specialSearch-clear { +.specialSearch { + display: block !important; + min-height: 28px; +} +.specialSearch .specialSearch-clear, +.specialSearch .specialSearch-add + { float: right; font-size: unset; padding: 0; } -.search-box .control-div .specialSearch-clear::before { +.specialSearch .specialSearch-clear::before { content: "❌"; } -.specialSearch { - display: block; +.specialSearch .specialSearch-add::before { + content: "➕"; } \ No newline at end of file diff --git a/languages/zh-CN.js b/languages/zh-CN.js index 6b956e23..07f4abd2 100644 --- a/languages/zh-CN.js +++ b/languages/zh-CN.js @@ -3630,21 +3630,41 @@ function parseBigNumber(number) let fragment = document.createDocumentFragment(); const specialSearchDiv = fragment.appendChild(document.createElement("ul")) specialSearchDiv.className = "specialSearch"; - const specialSearchArray = new Array(6).fill(null).map((i,n)=>{ - const specialSearchLabel = specialSearchDiv.appendChild(document.createElement("li")); - specialSearchLabel.innerHTML = `筛选${n+1}:`; - const specialSearch = specialSearchLabel.appendChild(document.createElement("select")); + function newSearchList(index) + { + const searchLi = document.createElement("li"); + const searchLabel = searchLi.appendChild(document.createElement("label")); + searchLabel.appendChild(document.createTextNode(`筛选${index}:`)); + const specialSearch = searchLabel.appendChild(document.createElement("select")); specialSearchFunctions.forEach((sfunc,idx)=>{ specialSearch.options.add(new Option(sfunc.name,idx)); }); - return specialSearch; - }); - const specialSearchClear = specialSearchDiv.insertBefore(document.createElement("button"),specialSearchArray[0].parentNode); + return {dom:searchLi,list:specialSearch}; + } + const specialSearchArray = []; //储存多个搜索列表的数组 + function addNewList() + { + const newSearch = newSearchList(specialSearchArray.length + 1); + specialSearchDiv.appendChild(newSearch.dom); + specialSearchArray.push(newSearch.list); + } + + const specialSearchClear = specialSearchDiv.appendChild(document.createElement("button")); specialSearchClear.className = "specialSearch-clear"; + specialSearchClear.title = "筛选框全部归零"; specialSearchClear.onclick = function(){ specialSearchArray.forEach(ss=>ss.selectedIndex = 0); }; + const specialSearchAdd = specialSearchDiv.appendChild(document.createElement("button")); + specialSearchAdd.className = "specialSearch-add"; + specialSearchAdd.title = "增加筛选框个数"; + specialSearchAdd.onclick = addNewList; + + addNewList(); //增加第1个 + addNewList(); //增加第2个 + addNewList(); //增加第3个 + //将搜索按钮强制改成特殊搜索 const searchStart = controlDiv.querySelector(".search-start"); searchStart.onclick = function(){