<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hans-CN">
	<id>https://pigeongames.gaoice.run/index.php?action=history&amp;feed=atom&amp;title=%E7%94%A8%E6%88%B7%3AStaf_Irity%2FJavaScript%2FProjectDivide_HydraCardShow.js</id>
	<title>用户:Staf Irity/JavaScript/ProjectDivide HydraCardShow.js - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://pigeongames.gaoice.run/index.php?action=history&amp;feed=atom&amp;title=%E7%94%A8%E6%88%B7%3AStaf_Irity%2FJavaScript%2FProjectDivide_HydraCardShow.js"/>
	<link rel="alternate" type="text/html" href="https://pigeongames.gaoice.run/index.php?title=%E7%94%A8%E6%88%B7:Staf_Irity/JavaScript/ProjectDivide_HydraCardShow.js&amp;action=history"/>
	<updated>2026-08-15T14:21:21Z</updated>
	<subtitle>本wiki上该页面的版本历史</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://pigeongames.gaoice.run/index.php?title=%E7%94%A8%E6%88%B7:Staf_Irity/JavaScript/ProjectDivide_HydraCardShow.js&amp;diff=53481&amp;oldid=prev</id>
		<title>2025年6月9日 (一) 10:48 Staf Irity</title>
		<link rel="alternate" type="text/html" href="https://pigeongames.gaoice.run/index.php?title=%E7%94%A8%E6%88%B7:Staf_Irity/JavaScript/ProjectDivide_HydraCardShow.js&amp;diff=53481&amp;oldid=prev"/>
		<updated>2025-06-09T10:48:44Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;zh-Hans-CN&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←上一版本&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;2025年6月9日 (一) 18:48的版本&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l265&quot;&gt;第265行：&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第265行：&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                         //console.log(i);&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                         //console.log(i);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                         current_status = true;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                         current_status = true;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                         cardPackName = node.childNodes[1].innerText&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;;//h3的架构在每个皮肤都是一样的，&lt;/del&gt;[0]&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;是一个固定id的span，[1]是显示的文本。&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;                        //h3的架构在每个皮肤都是一样的：如果含有非ASCII字符，那么[0]是一个固定id的span，[1]是显示的文本；否则[0]是显示的文本。&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                         cardPackName = &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;node.childNodes[0].innerText == &quot;&quot; ? &lt;/ins&gt;node.childNodes[1].innerText &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;: node.childNodes&lt;/ins&gt;[0]&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;.innerText;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                     }&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                     }&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 }&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 }&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Staf Irity</name></author>
	</entry>
	<entry>
		<id>https://pigeongames.gaoice.run/index.php?title=%E7%94%A8%E6%88%B7:Staf_Irity/JavaScript/ProjectDivide_HydraCardShow.js&amp;diff=53464&amp;oldid=prev</id>
		<title>Staf Irity：​创建页面，内容为“/**  * 原始文件改自llwiki.org/zh/User:Bhsd/widget/listen.js，以CC BY-NC-SA 4.0知识共享协议分发。  * @Function: demo  * @Author: SST, [LLwiki]  */ &quot;use strict&quot;; /* global mw, $ */  class Card {     ID = &quot;Dummy ID&quot;;     pack;     isWhims;     name;     kb;     rarity;     skill;     information;     rawHTML;     type;     constructor(name) {         this.name = name;     }     setRarity(txt){         if (txt.indexOf(&quot;S&quot;) !== -1){this.rarity = &quot;S&quot;…”</title>
		<link rel="alternate" type="text/html" href="https://pigeongames.gaoice.run/index.php?title=%E7%94%A8%E6%88%B7:Staf_Irity/JavaScript/ProjectDivide_HydraCardShow.js&amp;diff=53464&amp;oldid=prev"/>
		<updated>2025-06-09T09:50:54Z</updated>

		<summary type="html">&lt;p&gt;创建页面，内容为“&lt;span class=&quot;autocomment&quot;&gt;*  * 原始文件改自llwiki.org/zh/User:Bhsd/widget/listen.js，以CC BY-NC-SA 4.0知识共享协议分发。  * @Function: demo  * @Author: SST, &amp;#91;LLwiki&amp;#93;：​&lt;/span&gt; &amp;quot;use strict&amp;quot;; &lt;span class=&quot;autocomment&quot;&gt;global mw, $：​&lt;/span&gt;  class Card {     ID = &amp;quot;Dummy ID&amp;quot;;     pack;     isWhims;     name;     kb;     rarity;     skill;     information;     rawHTML;     type;     constructor(name) {         this.name = name;     }     setRarity(txt){         if (txt.indexOf(&amp;quot;S&amp;quot;) !== -1){this.rarity = &amp;quot;S&amp;quot;…”&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;/**&lt;br /&gt;
 * 原始文件改自llwiki.org/zh/User:Bhsd/widget/listen.js，以CC BY-NC-SA 4.0知识共享协议分发。&lt;br /&gt;
 * @Function: demo&lt;br /&gt;
 * @Author: SST, [LLwiki]&lt;br /&gt;
 */&lt;br /&gt;
&amp;quot;use strict&amp;quot;;&lt;br /&gt;
/* global mw, $ */&lt;br /&gt;
&lt;br /&gt;
class Card {&lt;br /&gt;
    ID = &amp;quot;Dummy ID&amp;quot;;&lt;br /&gt;
    pack;&lt;br /&gt;
    isWhims;&lt;br /&gt;
    name;&lt;br /&gt;
    kb;&lt;br /&gt;
    rarity;&lt;br /&gt;
    skill;&lt;br /&gt;
    information;&lt;br /&gt;
    rawHTML;&lt;br /&gt;
    type;&lt;br /&gt;
    constructor(name) {&lt;br /&gt;
        this.name = name;&lt;br /&gt;
    }&lt;br /&gt;
    setRarity(txt){&lt;br /&gt;
        if (txt.indexOf(&amp;quot;S&amp;quot;) !== -1){this.rarity = &amp;quot;S&amp;quot;;}&lt;br /&gt;
        else if (txt.indexOf(&amp;quot;A&amp;quot;) !== -1){this.rarity = &amp;quot;A&amp;quot;;}&lt;br /&gt;
        else if (txt.indexOf(&amp;quot;B&amp;quot;) !== -1){this.rarity = &amp;quot;B&amp;quot;;}&lt;br /&gt;
        else if (txt.indexOf(&amp;quot;C&amp;quot;) !== -1){this.rarity = &amp;quot;C&amp;quot;;}&lt;br /&gt;
        else {this.rarity = &amp;quot;Undefined&amp;quot;;}&lt;br /&gt;
    }&lt;br /&gt;
    getDisplay(){return &amp;quot;&amp;quot;;}&lt;br /&gt;
}&lt;br /&gt;
class CharacterCard extends Card {&lt;br /&gt;
    EP;&lt;br /&gt;
    BP;&lt;br /&gt;
    type = &amp;quot;C&amp;quot;;&lt;br /&gt;
    supports = [];&lt;br /&gt;
    attibutes = [];&lt;br /&gt;
}&lt;br /&gt;
class PlaceCard extends Card {&lt;br /&gt;
    EP;&lt;br /&gt;
    canMove;&lt;br /&gt;
    maxDamage;&lt;br /&gt;
    attibutes = [];&lt;br /&gt;
    type = &amp;quot;P&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
class ActionCard extends Card {&lt;br /&gt;
    type = &amp;quot;A&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
class counTerCard extends Card {&lt;br /&gt;
    type = &amp;quot;T&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
var DataCard = [];&lt;br /&gt;
var DataSelector = {&lt;br /&gt;
    Rarity: {&lt;br /&gt;
        type: &amp;quot;equal&amp;quot;,&lt;br /&gt;
        list: [&amp;quot;S&amp;quot;,&amp;quot;A&amp;quot;,&amp;quot;B&amp;quot;,&amp;quot;C&amp;quot;],&lt;br /&gt;
        target: &amp;quot;rarity&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    Pack: {&lt;br /&gt;
        type: &amp;quot;equal&amp;quot;,&lt;br /&gt;
        list: [],&lt;br /&gt;
        target: &amp;quot;pack&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    Type: {&lt;br /&gt;
        type: &amp;quot;equal&amp;quot;,&lt;br /&gt;
        hasI18n: true,&lt;br /&gt;
        list: [&amp;quot;C&amp;quot;, &amp;quot;P&amp;quot;, &amp;quot;A&amp;quot;, &amp;quot;T&amp;quot;],&lt;br /&gt;
        listI18n: [&amp;quot;角色卡&amp;quot;, &amp;quot;置物卡&amp;quot;, &amp;quot;行动卡&amp;quot;, &amp;quot;反击卡&amp;quot;],&lt;br /&gt;
        target: &amp;quot;type&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    IsWhims: {&lt;br /&gt;
        type: &amp;quot;equal&amp;quot;,&lt;br /&gt;
        hasI18n: true,&lt;br /&gt;
        list: [true,false],&lt;br /&gt;
        listI18n: [&amp;quot;是&amp;quot;, &amp;quot;否&amp;quot;],&lt;br /&gt;
        target: &amp;quot;isWhims&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
function initCurrentSelector(){&lt;br /&gt;
    for (var key in DataSelector) {&lt;br /&gt;
        var value = DataSelector[key];&lt;br /&gt;
        value.currentList = [];&lt;br /&gt;
        var SelectorButtons = document.getElementById(&amp;quot;HydraSelector_&amp;quot; + key).childNodes[1].childNodes;&lt;br /&gt;
        for(var i=0;i&amp;lt;SelectorButtons.length;i++){&lt;br /&gt;
            var isEnabled = SelectorButtons[i].classList.contains(&amp;quot;enabled&amp;quot;);&lt;br /&gt;
            if(isEnabled){value.currentList.push(value.list[i]);}&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
function isCardSelected(card){&lt;br /&gt;
    for (var key in DataSelector) {&lt;br /&gt;
        var value = DataSelector[key];&lt;br /&gt;
        if(value.currentList.length &amp;lt;= 0){}&lt;br /&gt;
        else if(value.type == &amp;quot;equal&amp;quot;){&lt;br /&gt;
            var compared = card[value.target];&lt;br /&gt;
            var selected = false;&lt;br /&gt;
            for (var i = 0;i &amp;lt; value.currentList.length;i++){&lt;br /&gt;
                var item = value.currentList[i];&lt;br /&gt;
                if(compared == item){selected = true;}&lt;br /&gt;
            }&lt;br /&gt;
            if(!selected){return false;}&lt;br /&gt;
        }&lt;br /&gt;
        else{console.log(&amp;quot;!!! wtf is the type? &amp;quot; + value.type);}&lt;br /&gt;
    }&lt;br /&gt;
    return true;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
var cardPackName = &amp;quot;&amp;quot;;&lt;br /&gt;
function getAttitubeListFromHTML(html) {//把文本转换为属性列表，晚点记得重写。&lt;br /&gt;
    return [html];&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function getNodeFromTBody(tbody,x,y){&lt;br /&gt;
    var X = 0;&lt;br /&gt;
    var trs = tbody.childNodes;&lt;br /&gt;
    for(var i = 0;i &amp;lt; trs.length;i++) {&lt;br /&gt;
        var node = trs[i];&lt;br /&gt;
        if(node.nodeName == &amp;quot;TR&amp;quot;){&lt;br /&gt;
            if(X == x){&lt;br /&gt;
                var Y = 0;&lt;br /&gt;
                var tds = node.childNodes;&lt;br /&gt;
                for(var j = 0;j &amp;lt; tds.length;j++) {&lt;br /&gt;
                    var node2 = tds[j];&lt;br /&gt;
                    if(node2.nodeName == &amp;quot;TD&amp;quot; || node2.nodeName == &amp;quot;TH&amp;quot;){&lt;br /&gt;
                        if(Y == y){return node2;}&lt;br /&gt;
                        Y++;&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            X++;&lt;br /&gt;
        }  &lt;br /&gt;
    }&lt;br /&gt;
    return tbody.childNodes[x].childNodes[y];&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function readData(tableNode){//格式和模板是一一对应的，改模板之前一定要记得改这个！！！&lt;br /&gt;
    var tbody = tableNode.childNodes[1];&lt;br /&gt;
    if (tableNode.classList.contains(&amp;quot;CharacterCard&amp;quot;)){&lt;br /&gt;
        //console.log(tbody.childNodes);&lt;br /&gt;
        var card = new CharacterCard(getNodeFromTBody(tbody,0,0).innerText);&lt;br /&gt;
        card.pack = cardPackName;&lt;br /&gt;
        card.ID = getNodeFromTBody(tbody,1,1).innerText;&lt;br /&gt;
        card.isWhims = (card.ID.indexOf(&amp;quot;W&amp;quot;) !== -1);//临时方案，记得改&lt;br /&gt;
        card.kb = getNodeFromTBody(tbody,1,3).innerText;&lt;br /&gt;
        card.attibutes = getAttitubeListFromHTML(getNodeFromTBody(tbody,2,1).innerHTML);&lt;br /&gt;
        card.setRarity(getNodeFromTBody(tbody,3,1).innerText);&lt;br /&gt;
        card.EP = getNodeFromTBody(tbody,3,3).innerHTML;&lt;br /&gt;
        card.BP = getNodeFromTBody(tbody,3,5).innerHTML;&lt;br /&gt;
        card.skill = getNodeFromTBody(tbody,5,0).innerHTML;&lt;br /&gt;
        card.supports = [getNodeFromTBody(tbody,5,1).innerHTML];&lt;br /&gt;
        card.information = getNodeFromTBody(tbody,6,0).innerHTML;&lt;br /&gt;
&lt;br /&gt;
        card.rawHTML = tableNode.outerHTML;&lt;br /&gt;
&lt;br /&gt;
        DataCard.push(card);&lt;br /&gt;
        //console.log(card);&lt;br /&gt;
    }&lt;br /&gt;
    else if (tableNode.classList.contains(&amp;quot;PlaceCard&amp;quot;)){&lt;br /&gt;
        var card = new PlaceCard(getNodeFromTBody(tbody,0,0).innerText);&lt;br /&gt;
        card.pack = cardPackName;&lt;br /&gt;
        card.ID = getNodeFromTBody(tbody,1,1).innerText;&lt;br /&gt;
        card.isWhims = (card.ID.indexOf(&amp;quot;W&amp;quot;) !== -1);//临时方案，记得改&lt;br /&gt;
        card.kb = getNodeFromTBody(tbody,1,3).innerText;&lt;br /&gt;
&lt;br /&gt;
        card.attibutes = getAttitubeListFromHTML(getNodeFromTBody(tbody,2,1).innerHTML);&lt;br /&gt;
        card.canMove = getNodeFromTBody(tbody,2,3).innerHTML;&lt;br /&gt;
&lt;br /&gt;
        card.setRarity(getNodeFromTBody(tbody,3,1).innerText);&lt;br /&gt;
        card.EP = getNodeFromTBody(tbody,3,3).innerHTML;&lt;br /&gt;
        card.maxDamage = getNodeFromTBody(tbody,3,5).innerHTML;&lt;br /&gt;
&lt;br /&gt;
        card.skill = getNodeFromTBody(tbody,4,1).innerHTML;&lt;br /&gt;
        card.information = getNodeFromTBody(tbody,5,1).innerHTML;&lt;br /&gt;
&lt;br /&gt;
        card.rawHTML = tableNode.outerHTML;&lt;br /&gt;
&lt;br /&gt;
        DataCard.push(card);&lt;br /&gt;
    }&lt;br /&gt;
    else if (tableNode.classList.contains(&amp;quot;ActionCard&amp;quot;)){&lt;br /&gt;
        var card = new ActionCard(getNodeFromTBody(tbody,0,0).innerText);&lt;br /&gt;
        card.pack = cardPackName;&lt;br /&gt;
        card.ID = getNodeFromTBody(tbody,1,1).innerText;&lt;br /&gt;
        card.isWhims = (card.ID.indexOf(&amp;quot;W&amp;quot;) !== -1);//临时方案，记得改&lt;br /&gt;
        card.kb = getNodeFromTBody(tbody,1,3).innerText;&lt;br /&gt;
        card.setRarity(getNodeFromTBody(tbody,1,5).innerText);&lt;br /&gt;
        card.skill = getNodeFromTBody(tbody,2,1).innerHTML;&lt;br /&gt;
        card.information = getNodeFromTBody(tbody,3,1).innerHTML;&lt;br /&gt;
&lt;br /&gt;
        card.rawHTML = tableNode.outerHTML;&lt;br /&gt;
&lt;br /&gt;
        DataCard.push(card);&lt;br /&gt;
    }&lt;br /&gt;
    else if (tableNode.classList.contains(&amp;quot;CounterCard&amp;quot;)){&lt;br /&gt;
        var card = new counTerCard(getNodeFromTBody(tbody,0,0).innerText);&lt;br /&gt;
        card.pack = cardPackName;&lt;br /&gt;
        card.ID = getNodeFromTBody(tbody,1,1).innerText;&lt;br /&gt;
        card.isWhims = (card.ID.indexOf(&amp;quot;W&amp;quot;) !== -1);//临时方案，记得改&lt;br /&gt;
        card.kb = getNodeFromTBody(tbody,1,3).innerText;&lt;br /&gt;
        card.setRarity(getNodeFromTBody(tbody,1,5).innerText);&lt;br /&gt;
        card.skill = getNodeFromTBody(tbody,2,1).innerHTML;&lt;br /&gt;
        card.information = getNodeFromTBody(tbody,3,1).innerHTML;&lt;br /&gt;
&lt;br /&gt;
        card.rawHTML = tableNode.outerHTML;&lt;br /&gt;
&lt;br /&gt;
        DataCard.push(card);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function readAllData(divNode){&lt;br /&gt;
    for(var i = 0;i &amp;lt; divNode.childNodes.length;i++) {&lt;br /&gt;
        var node = divNode.childNodes[i];&lt;br /&gt;
        //console.log(node);&lt;br /&gt;
        if(typeof node.classList === &amp;quot;undefined&amp;quot;){}//判断undefined&lt;br /&gt;
        else if(node.classList.contains(&amp;quot;citizen-table-wrapper&amp;quot;)){//Citizen皮肤（林百未实装）&lt;br /&gt;
            readData(node.childNodes[0]);&lt;br /&gt;
        }&lt;br /&gt;
        else if(node.classList.contains(&amp;quot;content-table-wrapper&amp;quot;)){//Timeless皮肤&lt;br /&gt;
            readData(node.childNodes[3].childNodes[0])&lt;br /&gt;
        }&lt;br /&gt;
        else if(node.nodeName == &amp;quot;TABLE&amp;quot;){//除了上述俩皮肤之外的其他皮肤&lt;br /&gt;
            readData(node);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function refresh(){&lt;br /&gt;
    var HydraShower = document.getElementById(&amp;quot;HydraShower&amp;quot;);&lt;br /&gt;
    var HydraTemp = document.getElementById(&amp;quot;HydraTemp&amp;quot;);&lt;br /&gt;
    var txt = &amp;quot;&amp;quot;&lt;br /&gt;
    initCurrentSelector();&lt;br /&gt;
    for(var i = 0;i &amp;lt; DataCard.length;i++){&lt;br /&gt;
        if(isCardSelected(DataCard[i])){txt += HydraTemp.childNodes[i].outerHTML;}&lt;br /&gt;
    }&lt;br /&gt;
    HydraShower.innerHTML = txt;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
(RLQ=window.RLQ||[]).push(function(){&lt;br /&gt;
	mw.widget = mw.widget || {};&lt;br /&gt;
	if (mw.widget.HydraCardShow){return;}&lt;br /&gt;
	mw.widget.HydraCardShow = true;&lt;br /&gt;
	mw.loader.implement(&amp;quot;lw.pagejs.pd.hcs&amp;quot;,function (jQuery,$){&lt;br /&gt;
		$(document).ready(function(){&lt;br /&gt;
			console.log(&amp;#039;HydraCardShow Loaded.&amp;#039;);&lt;br /&gt;
            &lt;br /&gt;
            //Step 1.装载数据&lt;br /&gt;
            var HydraTarget = document.getElementById(&amp;quot;HydraTarget&amp;quot;);//首先获取原始的数据&lt;br /&gt;
            var nodeList = HydraTarget.childNodes;//然后再获得其子元素&lt;br /&gt;
            var current_status = false;//状态机，但是只有两种：true=已经找到了h3，在等接下来的PDBox；false=等下一个h3&lt;br /&gt;
            &lt;br /&gt;
            for(var i = 0;i &amp;lt; nodeList.length;i++) {&lt;br /&gt;
                var node = nodeList[i];&lt;br /&gt;
                //console.log(node);&lt;br /&gt;
                if(current_status) {&lt;br /&gt;
                    if((typeof node.classList !== &amp;quot;undefined&amp;quot;) &amp;amp;&amp;amp; node.classList.contains(&amp;quot;PDBox&amp;quot;)){&lt;br /&gt;
                        //console.log(i);&lt;br /&gt;
                        current_status = false;&lt;br /&gt;
                        DataSelector.Pack.list.push(cardPackName);&lt;br /&gt;
                        readAllData(node);//读数据，不用多解释吧&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
                else {&lt;br /&gt;
                    if(node.nodeName == &amp;quot;H3&amp;quot;){//找到了h3&lt;br /&gt;
                        //console.log(i);&lt;br /&gt;
                        current_status = true;&lt;br /&gt;
                        cardPackName = node.childNodes[1].innerText;//h3的架构在每个皮肤都是一样的，[0]是一个固定id的span，[1]是显示的文本。&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            //Step 2.创建缓存&lt;br /&gt;
            var HydraTemp = document.getElementById(&amp;quot;HydraTemp&amp;quot;);&lt;br /&gt;
            for(var i = 0;i &amp;lt; DataCard.length;i++){&lt;br /&gt;
                var div = document.createElement(&amp;#039;div&amp;#039;);&lt;br /&gt;
                div.className = &amp;#039;Card&amp;#039;;&lt;br /&gt;
                div.innerHTML = DataCard[i].rawHTML;&lt;br /&gt;
                HydraTemp.appendChild(div);&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
            //Step 3.创建选择器&lt;br /&gt;
            for (var key in DataSelector) {&lt;br /&gt;
                var value = DataSelector[key];&lt;br /&gt;
                value.currentList = [];//初始化&lt;br /&gt;
                var SelectorButton = document.getElementById(&amp;quot;HydraSelector_&amp;quot; + key).childNodes[1];&lt;br /&gt;
                var list = (value.hasI18n === true) ? value.listI18n : value.list;&lt;br /&gt;
                for(var i = 0;i &amp;lt; value.list.length;i++){&lt;br /&gt;
                    var txt = list[i];&lt;br /&gt;
                    var button = document.createElement(&amp;#039;span&amp;#039;);&lt;br /&gt;
                    button.className = &amp;#039;pd-button disabled&amp;#039;;&lt;br /&gt;
                    button.innerHTML = txt;&lt;br /&gt;
                    SelectorButton.appendChild(button);&lt;br /&gt;
                }&lt;br /&gt;
                //if(value.type == &amp;quot;equal&amp;quot;){}&lt;br /&gt;
            }&lt;br /&gt;
            $(&amp;quot;#HydraSelector .Buttons span.pd-button&amp;quot;).click(function(){&lt;br /&gt;
                $(this).toggleClass(&amp;quot;disabled&amp;quot;);&lt;br /&gt;
                $(this).toggleClass(&amp;quot;enabled&amp;quot;);&lt;br /&gt;
                refresh();&lt;br /&gt;
            });&lt;br /&gt;
&lt;br /&gt;
            //Step 4.刷新&lt;br /&gt;
            refresh();&lt;br /&gt;
		});&lt;br /&gt;
	});&lt;br /&gt;
});&lt;/div&gt;</summary>
		<author><name>Staf Irity</name></author>
	</entry>
</feed>