ソーシャル・マーケティング協会 代表理事 白鳥友康の公式ブログ。Facebook、Twitter、YouTube、LINEなど、ソーシャルメディアを活用、集客する方法を無料でお届け。

ソーシャル★マーケティングの教科書 改訂版

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万円で提供していた【ソーシャル・マーケティング認定コンサルタント養成講座】のエッセンスを凝縮した動画を無料プレゼントしています。

ダウンロードはこちら

  関連記事

no image
Photoshop無料レイヤースタイル&ベクトルデータ&ブラシ&プラグインまとめ

目次1 レイヤースタイル集2 ベクトルデータ集3 ブラシ集4 プラグイン集5 グラデーション6 塗りつぶしパターン集7 アクショ…

Zemanta Related Posts Thumbnail
SEO対策するキーワードの選び方?メインキーワード編(2)

―知っておきたいSEO対策の基礎9 目次1 最初にコア用語を見つける2 前記事 最初にコア用語を見つける ブレインストーミングと…

CMS
★工務店さんのウェブサイトは施工事例がとっても大切。

日々、現場で作業をしていて施工事例はたっぷりあるけれど、自社サイトに最新事例をアップできていない。そんな会社様も多いと思います。…

130924_fo
Facebookカバー画像もPhotoshop無しで簡単に作れる

Facebookのカバー画像は、あなたの魅力を伝えるのに効果的。 通常は、Photoshopなどの画像編集ソフトを使って作成する…

no image
モニターは消耗品

下北沢を歩いていたら、中古屋でiiyamaのモニタが安く売っていたので買ってみた。 17インチで7980円。 事前に値段を調べて…

file folder with three csv symbol
★ウェブサイトの情報をCSVでダウンロードして利用する。

例えば、ある地域にある不動産の物件情報をExcelなどを利用して自社で解析したいとする。対象のデータは、賃貸ポータルサイトの検索…

HTML5のcanvasでランキング描画 – まつぼっくりんご

こうゆうのは後々使うときありますね。canvasはアイディア次第でいろいろと。 HTML5のcanvasでランキング描画 &#8…

Diversity Casual People Web Design Meeting Brainstorming Concept
最も売れるランディングページを作れる人は誰か?

ここ数ヶ月間、ちょこちょことランディングページの調整をさせていただいているクライアント様から、また販売実績のご報告をいただきまし…

no image
★4/18 ホームページ更新 共同作業会

ホームページを公開して、実際に更新を始めてみると思うように修正できないことが多いですよね。 そんなときはメールやホームページから…

no image
ホームページ作成用語集:JavaScript(ジャバスクリプト)

ホームページに様々な機能や動きを加えるために使われるプログラム言語。HTMLファイルの中に直接記述したり、別途作成した.jsファ…