ソーシャル・マーケティング協会 代表理事 白鳥友康の公式ブログ。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
ホームページ作成セミナーやります

友人のご協力を得てセミナーを開催することができました! パソコン教室を会場としてご提供いただきました。さくらさんありがとうござい…

email icon post sign
エントリーフォーム最適化(EFO)でお問い合わせの数を増やす。その3

エントリーフォーム最適化(EFO)のポイント、前回の続きです。 目次1 ★魅力的な文章で入力を促す2 ★「クリア」ボタンは必要な…

o0800077110456654354
ColorBar Generator ? カラーバージェネレーター ?

ColorBar Generatorは、好きな画像からその画像のイメージに合うようなオシャレ(死語)カラーバーを生成します。 適…

Zemanta Related Posts Thumbnail
商品画像を拡大して魅せる

この拡大の方法はちょっと面白いかもhttp://www.cecile.co.jp/detail/3/CTCV1E000005/

no image
IE、Firefox、Chrome 3大ブラウザ対決

先日、Google Chrome 4 が公開されたお知らせをしましたが Google「Chrome 4」正式版リリース &#82…

no image
Googleが無料で撮影してくれる「おみせフォト」 申込みページがオープン

これはスゴイ! Googleがカメラマンを派遣して店内などを撮影してくれるサービスで、しかも無料!! 現在の対応地域は都市圏を中…

2015-12-09 02.12.13
WebデザイナーにおすすめのiPhoneアプリ21

こりゃ便利! 助かるなぁ。 WebデザイナーにおすすめのiPhoneアプリ21 | Webクリエイターボックス http://w&hellip;

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

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

Zemanta Related Posts Thumbnail
内部SEO対策:<title>タイトルタグについて(2)

―知っておきたいSEO対策の基礎2 目次1 キーワードを適切に含める2 興味を惹くかどうか?3 よくある間違い4 タイトルを使っ…