「javascript/truename」の編集履歴(バックアップ)一覧はこちら
追加された行は緑色になります。
削除された行は赤色になります。
#js(){{{{{
<script type="text/javascript">
/* -----------------------------------------------------
#divid(truename) : [□真名隠しを解除する] チェックボックスを表示する
&spanclass(truename){新宿のアーチャー} 平文をspanで包む →ジェームズ・モリアーティと表示される
&spanclass(truenameRuby) ルビを表示 →ジェームズ・モリアーティ
&spanclass(truenameShort) 短縮名を表示 →モリアーティ
[[新宿のアーチャー]] リンクはspanいらず →ジェームズ・モリアーティ
&spanclass(truenameShort){[[新宿のアーチャー]]} 表示テキスト&popupが変わる。aタグよりspanを優先して処理してるので →モリアーティ
&spanclass(truename){[[フランのパパ>新宿のアーチャー]]} 表示名はフランのパパなので変わらない
--------------------------------------------------------*/
var TrueName = {
Key : 'truename',
List: [
{'id':202100,'no':184,'alias':'アーチャー・インフェルノ','aliasShort':'アーチャー・インフェルノ','aliasRuby':'アーチャー・インフェルノ','name':'巴御前','nameShort':'巴御前','nameRuby':'トモエゴゼン'},
{'id':202300,'no':156,'alias':'新宿のアーチャー','aliasShort':'新宿のアーチャー','aliasRuby':'シンジュクノアーチャー','name':'ジェームズ・モリアーティ','nameShort':'モリアーティ','nameRuby':'ジェームズ・モリアーティ'},
{'id':402500,'no':172,'alias':'レジスタンスのライダー','aliasShort':'レジスタンスのライダー','aliasRuby':'レジスタンスノライダー','name':'クリストファー・コロンブス','nameShort':'コロンブス','nameRuby':'クリストファー・コロンブス'},
{'id':503000,'no':169,'alias':'不夜城のキャスター','aliasShort':'不夜城のキャスター','aliasRuby':'フヤジョウノキャスター','name':'シェヘラザード','nameShort':'シェヘラザード','nameRuby':'シェヘラザード'},
{'id':503300,'no':192,'alias':'オケアノスのキャスター','aliasShort':'オケアノスのキャスター','aliasRuby':'オケアノスノキャスター','name':'キルケー','nameShort':'キルケー','nameRuby':'キルケー'},
{'id':503400,'no':194,'alias':'ミドラーシュのキャスター','aliasShort':'ミドラーシュのキャスター','aliasRuby':'ミドラーシュノキャスター','name':'シバの女王','nameShort':'シバの女王','nameRuby':'シバノジョウオウ'},
{'id':602600,'no':159,'alias':'新宿のアサシン','aliasShort':'新宿のアサシン','aliasRuby':'シンジュクノアサシン','name':'燕青','nameShort':'燕青','nameRuby':'エンセイ'},
{'id':602700,'no':170,'alias':'不夜城のアサシン','aliasShort':'不夜城のアサシン','aliasRuby':'フヤジョウノアサシン','name':'武則天','nameShort':'武則天','nameRuby':'ブソクテン'},
{'id':602900,'no':185,'alias':'アサシン・パライソ','aliasShort':'アサシン・パライソ','aliasRuby':'アサシン・パライソ','name':'望月千代女','nameShort':'望月千代女','nameRuby':'モチヅキチヨメ'},
{'id':702700,'no':171,'alias':'エルドラドのバーサーカー','aliasShort':'エルドラドのバーサーカー','aliasRuby':'エルドラドノバーサーカー','name':'ペンテシレイア','nameShort':'ペンテシレイア','nameRuby':'ペンテシレイア'},
{'id':1100500,'no':158,'alias':'新宿のアヴェンジャー','aliasShort':'新宿のアヴェンジャー','aliasRuby':'シンジュクノアヴェンジャー','name':'ヘシアン・ロボ','nameShort':'ヘシアン・ロボ','nameRuby':'ヘシアン・ロボ'},
],
IsAllowed: function() {
return (localStorage[this.Key] || '') == 'true';
},
SetAllow : function(perm) {
localStorage[this.Key] = perm == true;
},
ReplaceAll : function() {
var self = this;
if (self.IsAllowed()) {
// 真名表示
$('span[class^="truename"]').add('a').each(function() {
var text = $(this).text().trim();
if (!text)
return true;
var opt = ($(this).attr('class') || ''), opt = opt.match(/^truename(Ruby|Short)?$/), opt = RegExp.$1 || '';
for (var i = 0; i < self.List.length; i++) {
var item = self.List[i];
var keyword = '';
if (text.indexOf(item.alias) != -1) keyword = item.alias;
else if (text.indexOf(item.aliasShort) != -1) keyword = item.aliasShort;
else if (text.indexOf(item.aliasRuby) != -1) keyword = item.aliasRuby;
if (keyword.length > 0) {
var text2 = (opt == 'Ruby') ? item.nameRuby : (opt == 'Short') ? item.nameShort : item.name;
var reg = new RegExp(keyword, "g");
text2 = $(this).html().replace(reg, text2);
if (text2.length > 0)
$(this).html(text2);
break;
}
}
});
// 宝具隠しを外す
$('.truenameNoble > *, .truenameNoble > table > tbody > tr:first-child > td:nth-last-of-type(n+1)').hide();
$('.truenameNoble > table, .truenameNoble > table > tbody > tr:first-child > td:nth-last-of-type(1)').show();
}
}
};
document.addEventListener('DOMContentLoaded', function() {
// 今後JSプラグインでstyleが使えなくなるのに備えてインラインCSSでスタイル定義する。
var css = '<style type="text/css">'+
'div#truename { padding:10px; }'+
'div#truename label { cursor:pointer; font-weight:bold; font-size:15px; display:inline-block; margin-bottom:5px; }'+
'input#truenamecheck { cursor:pointer; margin-right:10px; }'+
'</style>';
$(css).appendTo('head');
// チェックボックスを作成する(左メニューに置くことを想定)
$('div#truename').each(function() {
var elem = $('<label>').attr('for', 'truenamecheck');
$('<input>').attr({'type': 'checkbox', 'id': 'truenamecheck'})
.prop('checked', TrueName.IsAllowed())
.change(function(){
TrueName.SetAllow($(this).prop('checked'));
})
.appendTo(elem);
elem.append('真名隠しを解除する');
$(this).empty().append(elem);
});
TrueName.ReplaceAll();
});
</script>
}}}}}
#js(){{{{{
<script type="text/javascript">
/* -----------------------------------------------------
#divid(truename) : [□真名隠しを解除する] チェックボックスを表示する
&spanclass(truename){新宿のアーチャー} 平文をspanで包む →ジェームズ・モリアーティと表示される
&spanclass(truenameRuby) ルビを表示 →ジェームズ・モリアーティ
&spanclass(truenameShort) 短縮名を表示 →モリアーティ
[[新宿のアーチャー]] リンクはspanいらず →ジェームズ・モリアーティ
&spanclass(truenameShort){[[新宿のアーチャー]]} 表示テキスト&popupが変わる。aタグよりspanを優先して処理してるので →モリアーティ
&spanclass(truename){[[フランのパパ>新宿のアーチャー]]} 表示名はフランのパパなので変わらない
--------------------------------------------------------*/
var TrueName = {
Key : 'truename',
List: [
{'id':202100,'no':184,'alias':'アーチャー・インフェルノ','aliasShort':'アーチャー・インフェルノ','aliasRuby':'アーチャー・インフェルノ','name':'巴御前','nameShort':'巴御前','nameRuby':'トモエゴゼン'},
{'id':202300,'no':156,'alias':'新宿のアーチャー','aliasShort':'新宿のアーチャー','aliasRuby':'シンジュクノアーチャー','name':'ジェームズ・モリアーティ','nameShort':'モリアーティ','nameRuby':'ジェームズ・モリアーティ'},
{'id':402500,'no':172,'alias':'レジスタンスのライダー','aliasShort':'レジスタンスのライダー','aliasRuby':'レジスタンスノライダー','name':'クリストファー・コロンブス','nameShort':'コロンブス','nameRuby':'クリストファー・コロンブス'},
{'id':503000,'no':169,'alias':'不夜城のキャスター','aliasShort':'不夜城のキャスター','aliasRuby':'フヤジョウノキャスター','name':'シェヘラザード','nameShort':'シェヘラザード','nameRuby':'シェヘラザード'},
{'id':503300,'no':192,'alias':'オケアノスのキャスター','aliasShort':'オケアノスのキャスター','aliasRuby':'オケアノスノキャスター','name':'キルケー','nameShort':'キルケー','nameRuby':'キルケー'},
{'id':503400,'no':194,'alias':'ミドラーシュのキャスター','aliasShort':'ミドラーシュのキャスター','aliasRuby':'ミドラーシュノキャスター','name':'シバの女王','nameShort':'シバの女王','nameRuby':'シバノジョウオウ'},
{'id':602600,'no':159,'alias':'新宿のアサシン','aliasShort':'新宿のアサシン','aliasRuby':'シンジュクノアサシン','name':'燕青','nameShort':'燕青','nameRuby':'エンセイ'},
{'id':602700,'no':170,'alias':'不夜城のアサシン','aliasShort':'不夜城のアサシン','aliasRuby':'フヤジョウノアサシン','name':'武則天','nameShort':'武則天','nameRuby':'ブソクテン'},
{'id':602900,'no':185,'alias':'アサシン・パライソ','aliasShort':'アサシン・パライソ','aliasRuby':'アサシン・パライソ','name':'望月千代女','nameShort':'望月千代女','nameRuby':'モチヅキチヨメ'},
{'id':702700,'no':171,'alias':'エルドラドのバーサーカー','aliasShort':'エルドラドのバーサーカー','aliasRuby':'エルドラドノバーサーカー','name':'ペンテシレイア','nameShort':'ペンテシレイア','nameRuby':'ペンテシレイア'},
{'id':1100500,'no':158,'alias':'新宿のアヴェンジャー','aliasShort':'新宿のアヴェンジャー','aliasRuby':'シンジュクノアヴェンジャー','name':'ヘシアン・ロボ','nameShort':'ヘシアン・ロボ','nameRuby':'ヘシアン・ロボ'},
{'id':105000,'no':310,'alias':'妖精騎士ガウェイン','aliasShort':'妖精騎士ガウェイン','aliasRuby':'ヨウセイキシガウェイン','name':'バーゲスト','nameShort':'バーゲスト','nameRuby':'バーゲスト'},
{'id':204300,'no':311,'alias':'妖精騎士トリスタン','aliasShort':'妖精騎士トリスタン','aliasRuby':'ヨウセイキシトリスタン','name':'バーヴァン・シー','nameShort':'バーヴァン・シー','nameRuby':'バーヴァン・シー'},
{'id':304800,'no':312,'alias':'妖精騎士ランスロット','aliasShort':'妖精騎士ランスロット','aliasRuby':'ヨウセイキシランスロット','name':'メリュジーヌ','nameShort':'メリュジーヌ','nameRuby':'メリュジーヌ'},
],
IsAllowed: function() {
return (localStorage[this.Key] || '') == 'true';
},
SetAllow : function(perm) {
localStorage[this.Key] = perm == true;
},
ReplaceAll : function() {
var self = this;
if (self.IsAllowed()) {
// 真名表示
$('span[class^="truename"]').add('a').each(function() {
var text = $(this).text().trim();
if (!text)
return true;
var opt = ($(this).attr('class') || ''), opt = opt.match(/^truename(Ruby|Short)?$/), opt = RegExp.$1 || '';
for (var i = 0; i < self.List.length; i++) {
var item = self.List[i];
var keyword = '';
if (text.indexOf(item.alias) != -1) keyword = item.alias;
else if (text.indexOf(item.aliasShort) != -1) keyword = item.aliasShort;
else if (text.indexOf(item.aliasRuby) != -1) keyword = item.aliasRuby;
if (keyword.length > 0) {
var text2 = (opt == 'Ruby') ? item.nameRuby : (opt == 'Short') ? item.nameShort : item.name;
var reg = new RegExp(keyword, "g");
text2 = $(this).html().replace(reg, text2);
if (text2.length > 0)
$(this).html(text2);
break;
}
}
});
// 宝具隠しを外す
$('.truenameNoble > *, .truenameNoble > table > tbody > tr:first-child > td:nth-last-of-type(n+1)').hide();
$('.truenameNoble > table, .truenameNoble > table > tbody > tr:first-child > td:nth-last-of-type(1)').show();
}
}
};
document.addEventListener('DOMContentLoaded', function() {
// 今後JSプラグインでstyleが使えなくなるのに備えてインラインCSSでスタイル定義する。
var css = '<style type="text/css">'+
'div#truename { padding:10px; }'+
'div#truename label { cursor:pointer; font-weight:bold; font-size:15px; display:inline-block; margin-bottom:5px; }'+
'input#truenamecheck { cursor:pointer; margin-right:10px; }'+
'</style>';
$(css).appendTo('head');
// チェックボックスを作成する(左メニューに置くことを想定)
$('div#truename').each(function() {
var elem = $('<label>').attr('for', 'truenamecheck');
$('<input>').attr({'type': 'checkbox', 'id': 'truenamecheck'})
.prop('checked', TrueName.IsAllowed())
.change(function(){
TrueName.SetAllow($(this).prop('checked'));
})
.appendTo(elem);
elem.append('真名隠しを解除する');
$(this).empty().append(elem);
});
TrueName.ReplaceAll();
});
</script>
}}}}}
Comments policy & Terms of Use
・ネタバレ自粛期間中はシナリオや真名のネタバレは禁止です!
ネタバレ自粛期間の文字列挿入箇所
・コメントの内容に準じたコメントフォームを利用しましょう!
※報告を扇動したり異なるフォームへの投稿が散見した場合、coや規制対応することがあります
・現在、異なる板へのガチャ報告に利用者が定型文で誘導を行えるようルール改定するか議論中です。
時間がありましたら賛成/反対だけで構わないのでレスの協力お願いします
閉じる