HTML内の住所などからhCardをJavaScriptで生成(意味はない)
スポンサードリンク
HTML内で
<div class="entry">
<h3>八木山ベニーランド</h3>
<ul>
<li>所在地: 〒982-0837 宮城県仙台市太白区長町越路19-1</li>
<li>TEL: 022-229-1603</li>
</ul>
</ul>
とかあったとき、むりくりhCardになるように書き換えます。要jQuery。
/* hCard */
$(function() {
$('.entry').addClass('vcard');
$('.entry h3').addClass('fn');
$('.entry li').each(
function() {
var self = $(this);
if (self.text().match(/所在地/) ) {
var regionList=[
'北海道',
'青森県',
'岩手県',
'宮城県',
'秋田県',
'山形県',
'福島県',
'茨城県',
'栃木県',
'群馬県',
'埼玉県',
'千葉県',
'東京都',
'神奈川県',
'新潟県',
'富山県',
'石川県',
'福井県',
'山梨県',
'長野県',
'岐阜県',
'静岡県',
'愛知県',
'三重県',
'滋賀県',
'京都府',
'大阪府',
'兵庫県',
'奈良県',
'和歌山県',
'鳥取県',
'島根県',
'岡山県',
'広島県',
'山口県',
'徳島県',
'香川県',
'愛媛県',
'高知県',
'福岡県',
'佐賀県',
'長崎県',
'熊本県',
'大分県',
'宮崎県',
'鹿児島県',
'沖縄県'
];
var address = self.text();
address = address.replace(/\s*所在地:\s*/g,'');
var zipcode;
var re = new RegExp('〒(...-....)');
if ( address.match(re) ) {
zipcode = '〒<span class="postal-code">'+ RegExp.$1 +'</span>';
address = address.replace(re,'');
}
address = address.replace(/^\s+|\s+$/g, "");
var region;
for (var i = 0; i < regionList.length; i++) {
var re = new RegExp('^('+regionList[i]+')');
if ( address.match(re) ) {
region = '<span class="region">'+ RegExp.$1 +'</span>';
address = address.replace( re, '' );
}
};
var locality;
var re = new RegExp('(.+[市区町村])');
if ( address.match(re) ) {
locality = '<span class="locality">'+ RegExp.$1 +'</span>';
address = address.replace( re, '' );
};
address = '<span class="street-address">'+ address +'</span>';
self.html('所在地: <span class="adr">'+ zipcode + ' '+ region + locality + address + '</span>');
}
else if (self.text().match(/TEL/) ) {
var tel = self.text();
tel = tel.replace(/\s*TEL:\s*/g,'');
self.html('TEL: <span class="tel">'+ tel + '</span>');
}
});
});
うすうす気づいているかもしれないですけれども、これっておそらくFirefoxのOperator機能拡張でしか役に立たないよ。
スポンサードリンク
トラックバック(0)
トラックバックURL: http://blog.dtpwiki.jp/MTOS/mt-tb.cgi/3581





![: Amazon.co.jp: プラスティック・メモリーズ 1【完全生産限定版】(イベントチケット優先販売申込券付) [Blu-ray]](/lists/_9/B00VWX66E8.jpg)
![: Amazon.co.jp: プラスティック・メモリーズ 2【完全生産限定版】[Blu-ray]](/lists/_9/B00VWX66K2.jpg)
![: Amazon.co.jp: プラスティック・メモリーズ 3【完全生産限定版】[Blu-ray]](/lists/_9/B00VWX6MV0.jpg)
![: Amazon.co.jp: プラスティック・メモリーズ 4【完全生産限定版】[Blu-ray]](/lists/_9/B00VWX66IO.jpg)
![: Amazon.co.jp: プラスティック・メモリーズ 5【完全生産限定版】[Blu-ray]](/lists/_9/B00VWX6Y0E.jpg)
![: Amazon.co.jp: プラスティック・メモリーズ 6【完全生産限定版】[Blu-ray]](/lists/_9/B00VWX69D6.jpg)


コメントする