www.wanichan.com

Part 2 AddFeedでTwitterフィードの挿入

Section 2 TwitterやRSSとの連携

Twitterフィードのツイートタイムを日本語表記にするには

はじめに

jquery.ztwitterfeed.min2.js ファイルにおいて、既定では、1分以内の場合は < 1m、~分前は ~ m、~時間前は ~ h、~日前は ~ d、~週間前は ~ w と表記するように定義されています。これらをそれぞれ日本語表記に変更することで、日本語表記にできます。ただし、そのJavascriptの charset(エンコードタイプ)をシフトJISに設定しないと文字化けしてしまうので注意してください。

function getLapsedTime(strDate)
{
strDate=Date.parse(strDate.replace(/^([a-z]{3})( [a-z]{3} \d\d?)(.*)( \d{4})$/i,'$1,$2$4$3'));
var todayDate=new Date();
var tweetDate=new Date(strDate)
var lapsedTime=Math.round((todayDate.getTime()-tweetDate.getTime())/1000)

if(lapsedTime<60)
{
return'< 1m';
}
else if(lapsedTime<(60*60))
{
return Math.round(lapsedTime/60)+'m';
}
else if(lapsedTime<(24*60*60))
{
return Math.round(lapsedTime/3600)+'h';
}
else if(lapsedTime<(7*24*60*60))
{
return Math.round(lapsedTime/86400)+'d';
}
else
{
return Math.round(lapsedTime/604800)+'w';
}
}

日本語表記にする

上記のコードを以下のように置き換えます。

function getLapsedTime(strDate)
{
strDate=Date.parse(strDate.replace(/^([a-z]{3})( [a-z]{3} \d\d?)(.*)( \d{4})$/i,'$1,$2$4$3'));
var todayDate=new Date();
var tweetDate=new Date(strDate)
var lapsedTime=Math.round((todayDate.getTime()-tweetDate.getTime())/1000)

if(lapsedTime<60)
{
return'< 1分;
}
else if(lapsedTime<(60*60))
{
return Math.round(lapsedTime/60)+'分前';
}
else if(lapsedTime<(24*60*60))
{
return Math.round(lapsedTime/3600)+'時間前';
}
else if(lapsedTime<(7*24*60*60))
{
return Math.round(lapsedTime/86400)+'日前';
}
else
{
return Math.round(lapsedTime/604800)+'週間前';
}
}

文字コードを設定する

Webページをコードビューで開き、jquery.ztwitterfeed.min2.js の文字コードをシフトJISにします。

<script type="text/javascript" src="jquery.ztwitterfeed.min2.js" charset="shift_jis"></script>

ブラウザーでプレビューする

ブラウザーでプレビューすると、以下のように日本語表記になりました。

スポンサーリンク
INDEX
  • このエントリーをはてなブックマークに追加

問題は解決しましたか?

操作方法、設定方法等で困ったら、 Expression Web Users Forum に投稿してください!

▲このページのトップへ