「javascript/armorfilter」の編集履歴(バックアップ)一覧はこちら

javascript/armorfilter - (2019/02/27 (水) 19:57:50) の1つ前との変更点

追加された行は緑色になります。

削除された行は赤色になります。

#javascript(){{ <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> <script> $("#table_armorfilter table tbody").each([[リンク名>URL]] function () { var maxtd = $(this)[0].rows[0].cells.length; $("tr").each(function () { if (this.cells.length >= maxtd) { $(this).addClass("tr1"); } else { $(this).addClass("tr2"); } }); }); var typ = ["盾","防具","靴","装飾","頭"]; var typ2 = ["Shield","Armor","Shoes","Accessory","Hat"]; var job = ["すべて", "ウォーリア", "レンジャー", "メイジ", "クレリック", "マーチャント", "モンク"]; var job2 = ["Warrior Ranger Mage Cleric Merchant Monk","Warrior","Ranger","Mage","Cleric","Merchant","Monk"]; $("#table_armorfilter table tbody tr").each(function () { var num = $(this).children().eq(2).text(); var num2 = $(this).children().eq(4).text(); for (var i = 0, len = typ.length; i < len; ++i) { if (num === typ[i]) { $(this).addClass(typ2[i]); $(this).nextUntil(".tr1").addClass(typ2[i]); } } if (num2.indexOf("以外") > -1) { $(this).addClass(job2[0]); $(this).nextUntil(".tr1").addClass(job2[0]); } for (var i = 0, len = job.length; i < len; ++i) { if (num2.indexOf(job[i]) > -1) { $(this).addClass(job2[i]); $(this).nextUntil(".tr1").addClass(job2[i]); } if (num2.indexOf(job[i]) > -1 && num2.indexOf("以外") > -1) { $(this).removeClass(job2[i]); $(this).nextUntil(".tr1").removeClass(job2[i]); } } }); var args = $.trim($("div#args").text()).split(","); if (args == "") { filter();} else { for (var i = 0, len = args.length; i < len; ++i) { $(".radio_armorfilter input").each(function(){ if($(this).val()==args[i]){ $(this).val([args[i]]); $("#form_armorfilter").addClass("hide"); } }); } filter(); } $(".radio_armorfilter").on("change", function () { filter(); }); function filter() { var radio = $(".radio_armorfilter").find('input[type="radio"]:checked'); var area = radio.map(function() { return $(this).val(); }) $("#table_armorfilter table tbody tr").removeClass("hide"); var count = 0; for (var i = 0, len = area.length; i < len; ++i) { if (area[i] !== "") { $("#table_armorfilter table tbody tr").filter(function () { count++; return !$(this).hasClass(area[i]); }).addClass("hide"); } } var len = $('#table_armorfilter .tr1:visible').length; $("#result_len").html(len+"個の防具が存在します。"); } </script> }}
#javascript(){{ <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> <script> $("#table_armorfilter table tbody").each( function () { var maxtd = $(this)[0].rows[0].cells.length; $("tr").each(function () { if (this.cells.length >= maxtd) { $(this).addClass("tr1"); } else { $(this).addClass("tr2"); } }); }); var typ = ["盾","防具","靴","装飾","頭"]; var typ2 = ["Shield","Armor","Shoes","Accessory","Hat"]; var job = ["すべて", "ウォーリア", "レンジャー", "メイジ", "クレリック", "マーチャント", "モンク"]; var job2 = ["Warrior Ranger Mage Cleric Merchant Monk","Warrior","Ranger","Mage","Cleric","Merchant","Monk"]; $("#table_armorfilter table tbody tr").each(function () { var num = $(this).children().eq(2).text(); var num2 = $(this).children().eq(4).text(); for (var i = 0, len = typ.length; i < len; ++i) { if (num === typ[i]) { $(this).addClass(typ2[i]); $(this).nextUntil(".tr1").addClass(typ2[i]); } } if (num2.indexOf("以外") > -1) { $(this).addClass(job2[0]); $(this).nextUntil(".tr1").addClass(job2[0]); } for (var i = 0, len = job.length; i < len; ++i) { if (num2.indexOf(job[i]) > -1) { $(this).addClass(job2[i]); $(this).nextUntil(".tr1").addClass(job2[i]); } if (num2.indexOf(job[i]) > -1 && num2.indexOf("以外") > -1) { $(this).removeClass(job2[i]); $(this).nextUntil(".tr1").removeClass(job2[i]); } } }); var args = $.trim($("div#args").text()).split(","); if (args == "") { filter();} else { for (var i = 0, len = args.length; i < len; ++i) { $(".radio_armorfilter input").each(function(){ if($(this).val()==args[i]){ $(this).val([args[i]]); $("#form_armorfilter").addClass("hide"); } }); } filter(); } $(".radio_armorfilter").on("change", function () { filter(); }); function filter() { var radio = $(".radio_armorfilter").find('input[type="radio"]:checked'); var area = radio.map(function() { return $(this).val(); }) $("#table_armorfilter table tbody tr").removeClass("hide"); var count = 0; for (var i = 0, len = area.length; i < len; ++i) { if (area[i] !== "") { $("#table_armorfilter table tbody tr").filter(function () { count++; return !$(this).hasClass(area[i]); }).addClass("hide"); } } var len = $('#table_armorfilter .tr1:visible').length; $("#result_len").html(len+"個の防具が存在します。"); } </script> }}

表示オプション

横に並べて表示:
変化行の前後のみ表示: