Paroday

Paroday:ニュースやアニメのレビュー、FC2ブログのテンプレート・プラグインなどを配信しています。

もしかして Parody ではありませんか? yes

Twitterの「このツイートをサイトに埋め込む」で文字化け

【追記】 2012年6月19日までに、文字化けが解消されたことを確認しました。現在は正常に表示されます。この記事のコードは必要ないため、削除してください。


 現在、ツイート画面の「このツイートをサイトに埋め込む」で表示されるHTMLコードをFC2ブログサーバー移設が済んでいないサーバー番号ありのブログ)に貼り付けると、フッターの日付や「返信」「リツイート」「お気に入り登録」のリンクテキストが文字化けします。

 移設が済んでいないサーバー番号ありのブログの文字コードが『euc-jp』のためです。

 記事に貼り付け。

 これまでは正常に表示できていたようなので、修正されるのを待つか、ブログのサーバーが移設(『utf-8』に自動変更)されるまで待てば、元通りになります。

待てないとき

 テンプレートHTMLの最下部付近「</body>」の前などに次のコードを貼り付けると、ページ表示後に文字化けが修正されます。

<script type="text/javascript"><!--
function blogTwCharset(){var i,q=document.getElementsByTagName('blockquote'),j=q.length;
for(i=0;i!=j;i++){if(q[i].className.indexOf('twt-o twt-tweet')===0){
var v=q[i].getElementsByTagName('div'),w=v[v.length-1];
if(w&&w.className==='footer'){
var s=w.getElementsByTagName('span'),b=w.getElementsByTagName('b');v=s[s.length-2];
if(v.className.indexOf('updated')===0&&v.title.indexOf('月')===-1&&v.lastChild.nodeType===3){
s=b.length-1;v.title='';v.lastChild.nodeValue=v.lastChild.nodeValue.replace(/(\d+)[^\w]+?( \d+)/,'$1月$2');
b[s].parentNode.title='';b[s].firstChild.nodeValue='お気に入りに登録';
b[s-1].parentNode.title='';b[s-1].firstChild.nodeValue='リツイート';
b[s-2].parentNode.title='';b[s-2].firstChild.nodeValue='返信';}}}}}
setTimeout(blogTwCharset,800);setTimeout(blogTwCharset,4000);
--></script>

</body>


 あるいは、「</head>」の前や「<body>」の中に次のコードを加えると修正されます(外部ファイル)。

<script type="text/javascript" src="http://blog-imgs-53.fc2.com/p/a/r/paro2day/fc2twcharset.js" charset="utf-8"></script>


※上記2つのコードは文字化けの問題が解決するか、FC2ブログのサーバー移設が完了したら削除してください。blog122はサーバー移設がまだのため、問題解決確認用に埋め込んでおきます。下記が文字化けしていなければ解決済みです。

関連記事
  1. comment

コメント

Icon ※必須 :
Pass  ※入力した英数字を識別コードとしてNoに表示(123→LkZag.iM)