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万円で提供していた【ソーシャル・マーケティング認定コンサルタント養成講座】のエッセンスを凝縮した動画を無料プレゼントしています。
関連記事
-
-
ホームページ作成用語集:Flash
Adobe Flash、略してFlash。 アドビシステムズ (Adobe Systems) が開発した、動画などのリッチコンテ…
-
-
ホームページ作成用語集:GIFファイル(ジフファイル)
画像形式のひとつ。256色まで色を制限することでファイルサイズを小さくすることができる。 この特性から、写真など色数が多い画像に…
-
-
エントリーフォーム最適化(EFO)でお問い合わせの数を増やす。その3
エントリーフォーム最適化(EFO)のポイント、前回の続きです。 目次1 ★魅力的な文章で入力を促す2 ★「クリア」ボタンは必要な…
-
-
リンクに良く使われている「>>」記号をHTMLで表示する方法
リンクの部分に「»」という記号を「>>」のように2文字ではなく、1文字で表示したい。 そんなときには。 …
-
-
内部SEO対策:ページタイトル作成における5つの基本
ページタイトルはホームページのテキストの中でも、検索エンジンのロボットが特に重要視している部分です。 ページタイトルを工夫するこ…
-
-
★ホームページの更新は上手くいっていますか?
ホームページを公開して、実際に更新を始めてみると思うように修正できないことが多いですよね。 そんなときはメールやホームページから…
-
-
HTML5で廃止予定の要素と属性
ブログなどを使って投稿すると、自動的に挿入されてしまうタグが多数ありますね。 現在でも推奨はされていないが、頻繁に使われているタ…
-
-
ホームページ作成用語集:HTTP(エイチティーティーピー)
HyperText Transfer Protocolの略。HTMLなどによって書かれたハイパーテキストを送受信するために使われ…
-
-
ガンブラー(Gumblar)によるWebサイト改ざん被害の対策
世間を騒がしているガンブラーですが、FTPを使ってホームページを更新しているPCは特に注意が必要です。 まずは基本的な対策を。 …
-
-
tableレイアウトとCSSレイアウト
この業界にお世話になってから10年が経ちますが、HTMLのコーディング方法は、かなり変化してきました。 最初は、tableタグを…
