JavaScriptでマルチバイト文字列を決まった長さで省略する方法
投稿日時:
最終更新日時:2015/03/16 20:03
この記事は約 2 分で読めます。
大丈夫、あなたなら出来る!
ソーシャル・マーケティング協会 代表理事の白鳥友康です。
ブログの「続きを読む」みたいなことを、JavaScriptで実現する方法です。
デザインの都合でエリアに入力できる文字数が決まっていて
マルチバイトで○文字分みたいな切り出しをしたい場合があります。
でもマルチバイトとシングルバイトが混合している文字列の場合、
JavaScriptだと、これがなにげに難しかったりしますね。
そんなときはに役立つサンプルスクリプトです。
/**
文字列を省略する
@arg text 省略する文字列
@arg len 半角文字数で指定
@arg truncation 省略時の文字列
*/
function substr(text, len, truncation) {
var count = 0;
var str = '';
for (i=0; i
n = escape(text.charAt(i));
if (n.length < 4) count++; else count+=2;
if (count>len) {return str+truncation;}
str += text.charAt(i);
}
return text;
}
無料プレゼント
【Web担当者向け】SNS集客の全体像を55分で把握できる動画
受講料50万円で提供していた【ソーシャル・マーケティング認定コンサルタント養成講座】のエッセンスを凝縮した動画を無料プレゼントしています。
関連記事
-
-
リンクに良く使われている「>>」記号をHTMLで表示する方法
リンクの部分に「»」という記号を「>>」のように2文字ではなく、1文字で表示したい。 そんなときには。 …
-
-
商品画像を拡大して魅せる
この拡大の方法はちょっと面白いかもhttp://www.cecile.co.jp/detail/3/CTCV1E000005/
-
-
日本のインターネット普及率がこんなに低かったとは
総務省の発表によるとネット普及率が78.0%とのこと。この数値にあなたはどんな印象を持ちましたか? 総務省、「通信利用動向調査」…
-
-
Photoshop無料レイヤースタイル&ベクトルデータ&ブラシ&プラグインまとめ
目次1 レイヤースタイル集2 ベクトルデータ集3 ブラシ集4 プラグイン集5 グラデーション6 塗りつぶしパターン集7 アクショ…
-
-
内部SEO対策:ページタイトル作成における5つの基本
ページタイトルはホームページのテキストの中でも、検索エンジンのロボットが特に重要視している部分です。 ページタイトルを工夫するこ…
-
-
本当の自己紹介
◆とあるセミナーにプチ講師として話しをする機会があり 自己紹介を見直しています。 そもそも自己紹介とは何なのか? ということ…
-
-
画像置換(text-indent)で出る点線を消したい
text-indent:-9999px; を使った画像置換はFirefox だとクリックした時に画面外へ点線が出てしまう。そんな…
-
-
ホームページ作成セミナーやります
友人のご協力を得てセミナーを開催することができました! パソコン教室を会場としてご提供いただきました。さくらさんありがとうござい…
-
-
究極のCPUクーラー?PCを水槽で動かしている驚きの映像
ホームページ作成にはパソコンが必須。 最近、気温が上がってきたのでパソコンが熱くなりすぎると動作が遅くなってしまいますよね。 そ…
-
-
ガンブラー(Gumblar)によるWebサイト改ざん被害の対策
世間を騒がしているガンブラーですが、FTPを使ってホームページを更新しているPCは特に注意が必要です。 まずは基本的な対策を。 …
