模板:角色图鉴行:修订间差异
来自勿忘草与永远的少女
跳到导航跳到搜索
无编辑摘要 标签:已被回退 |
|||
| 第1行: | 第1行: | ||
<includeonly> | <includeonly> | ||
< | <script> | ||
(function() { | |||
// ============ 按你的游戏修改固定羁绊列表 ============ | |||
const BOND_LIST = ['全部', '法师', '狂战士', '圣盾战士', '木灵使', '战略分析', '水之女神']; | |||
function initChessFilter() { | |||
var container = document.getElementById('chess-table'); | |||
</ | if (!container) return; | ||
var table = container.querySelector('table.cargoDynamicTable'); | |||
if (!table) return; | |||
var headerCells = table.querySelectorAll('thead th'); | |||
var targetSelect = null; | |||
var bondColumnIndex = -1; | |||
headerCells.forEach(function(th, idx) { | |||
var select = th.querySelector('select'); | |||
if (select && th.getAttribute('data-field') === '羁绊') { | |||
targetSelect = select; | |||
bondColumnIndex = idx; | |||
} | |||
}); | |||
if (!targetSelect || bondColumnIndex === -1) return; | |||
// 替换下拉选项 | |||
targetSelect.innerHTML = ''; | |||
BOND_LIST.forEach(function(bond) { | |||
var opt = document.createElement('option'); | |||
opt.value = bond; | |||
opt.textContent = bond; | |||
targetSelect.appendChild(opt); | |||
}); | |||
targetSelect.value = '全部'; | |||
// 移除原有事件,替换为新节点 | |||
var newSelect = targetSelect.cloneNode(true); | |||
targetSelect.parentNode.replaceChild(newSelect, targetSelect); | |||
targetSelect = newSelect; | |||
var tbody = table.querySelector('tbody'); | |||
if (!tbody) return; | |||
var rows = tbody.querySelectorAll('tr'); | |||
function filterBond() { | |||
var selected = targetSelect.value; | |||
rows.forEach(function(row) { | |||
var cells = row.querySelectorAll('td'); | |||
if (cells.length <= bondColumnIndex) return; | |||
var bondText = cells[bondColumnIndex].textContent.trim(); | |||
if (selected === '全部') { | |||
row.style.display = ''; | |||
return; | |||
} | |||
var bonds = bondText.split(/[,,、]/).map(function(s) { return s.trim(); }); | |||
row.style.display = bonds.indexOf(selected) !== -1 ? '' : 'none'; | |||
}); | |||
} | |||
targetSelect.addEventListener('change', filterBond); | |||
} | |||
if (document.readyState === 'loading') { | |||
document.addEventListener('DOMContentLoaded', initChessFilter); | |||
} else { | |||
initChessFilter(); | |||
} | |||
})(); | |||
</script> | |||
<style> | |||
/* 可选的下拉样式 */ | |||
#chess-table select { | |||
padding: 2px 6px; | |||
border-radius: 4px; | |||
border: 1px solid #8B0000; | |||
color: #8B0000; | |||
font-weight: bold; | |||
} | |||
</style> | |||
</includeonly> | </includeonly> | ||