解決済

clip!clip!
Ads By Google

文字が中途半端に折り返されないようにしたいのですが。

右サイドプラグインの記事タイトルやコメントなどが長いときに、
2行に表示しないで一定の幅以降で省略し、

○△□○△□……←長いタイトルの後半を省略して
リーダー罫などを挿入し1行にする事は出来ますか?

初心者ですので、分かりやすくお教えいただけると嬉しいのですが、
どうぞよろしくお願いします。

2008-11-12 12:06の質問
この質問と回答を読んで役に立った場合は「役に立つ質問」に投票してください。投票が多い質問は、役に立つ質問一覧に掲載され、より多くの人に見てもらうことができます。

回答(1)

1.

2008-11-12 19:41:43ベスト
勘違いしてたらごめんなさい。

フリーエリアプラグインで
<script type="text/javascript" src="http://parts.blog.livedoor.jp/js/jquery.js"></script>
<script type="text/javascript"><!--
$(function(){
  var w_max = 10; //文字列の長さが10文字を越えていたら省略形にする
  $("div.sidebody>a").each(function(){
    var text=$(this).text();
    if(text.length>w_max){
      $(this).text(text.substr(0,w_max -1) + "…");
    }
  });
});
//-->
</script>
とかしてやると、プラグイン中のリンクのある文字列(記事タイトルとかコメントのリンクとかカテゴリタイトルなんか)を指定した長さに省略させることができます。
(ページの読み込みが終了した時点で実行されます)
(必要以外のものにも適用されたらごめんなさいfeel_down02
文字列の長さは数値10の部分を修正して指定します。
(半角の文字も全角の文字も1文字としてカウントされます)

>>#ゾーロク様、ありがとうございます。
アドバイスをいただけるのは嬉しいので、またコメントくださいませ。
??Word wrap??=検索して調べました。沢山の解説を読みました。
このような事も自分の勉強になります。どうぞよろしくお願いします。

>>BLUEPIXY様、ありがとうございます
今までプラグインに合わせた文字数の記事タイトルをつけてきました。
今日、長くしてみたら「・・・」の省略形になりました。

コメント欄は、
「記事タイトル」の後に・・・←省略形(投稿者の名前)が表示され、
折り返しはありますが省略形は出来ました。投稿者の方の名前を
省略すると失礼になるので、このまま表示します。
必要なところにきちんと効果があり、充分に長いタイトルが
付けられ、もう少し「遊び」ができるので・・・嬉しい結果でした。
また教えていただく事がありましたらよろしくお願いします。

Ads By Google

コメント(5)

2008-11-12 12:31:40

英文"word wrap"をする/しない指定を探し出してチェックを入れればすむこと。
「ラップ」の意味を見直すときです。

#2.  BLUEPIXY
2008-11-12 18:35:00

>>#1
質問の意味を見なおすべきです。

2008-11-12 23:21:53

あらん、そうでした。
タイトルを読んだだけで勘違い。
「回答」でなくてよかった。
恥掻くところでしたん。

#4.  BLUEPIXY
2008-11-13 19:57:00

1>投稿者の方の名前を省略
投稿者の名前がリンクになっている場合に適用されてしまうということですね。

"div.sidebody>a"

"div.sidebody>a:first"
に修正すればいいかもしれません。(未確認)

ちなみにウチのブログの場合は、コメントの投稿者名の部分は、あらかじめ折り返しているので、その分、行が長くならなくて済むようにしてあります。
だいぶ前にそういう質問があってそのようにしました。

#5.  魔女
2008-11-14 09:37:02

>>#4解決済み後も追加の回答、ありがとうございます。

:first"を付け加えるとコメント部分のみ「記事タイトルと投稿者」の全文が表示されます。投稿記事欄ほかは「…」で省略されます。

sidebody>aのままにしておき、別途再質問をさせていただきたいので、どうぞよろしくお願いします。

トラックバック(2)

トラックバックURL: