模板:角色图鉴行:修订间差异

来自勿忘草与永远的少女
跳到导航跳到搜索
Admin留言 | 贡献
无编辑摘要
标签已被回退
Admin留言 | 贡献
撤销Admin讨论)的修订版本1786
标签撤销
第1行: 第1行:
<includeonly>
<includeonly>
<script>
<tr class="role-row" data-bonds="{{{羁绊|}}}">
(function() {
  <td>{{{图片|}}}</td>
  // ============ 按你的游戏修改固定羁绊列表 ============
   <td>[[{{{_pageName|}}}|{{{名称|}}}]]</td>
   const BOND_LIST = ['全部', '法师', '狂战士', '圣盾战士', '木灵使', '战略分析', '水之女神'];
  <td>{{{稀有度|}}}</td>
 
  <td>{{{费用|}}}</td>
  function initChessFilter() {
   <td>{{{定位|}}}</td>
    var container = document.getElementById('chess-table');
  <td>{{{羁绊|}}}</td>
    if (!container) return;
</tr>
    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>

2026年5月10日 (日) 08:39的版本