質問: function(){var summary=document.getElementById("summary")}; ``` 上記javascriptをscriptタグで囲ってbodyの閉じタグの直前に入れました。 ``` ``` javascriptでIDを指定して抜き出し、summaryと名の付いたdivタグへ挿入しようとしました。 (空白となりました) innerHTMLを使っても同じ状態です。 ちなみに、fc2ブログではhtml部分に、本文をまるごと表示するための<%topentry_body>という変数が用意されているのですが、これを使うと本文のラストまで表示されて長くなってしまうので、自分で表示する範囲を決めようと思い立った次第です。 もしよろしければ、お力添えいただければ幸いです。 どうぞよろしくお願いいたします。
回答: ### できない理由 JavaScriptはページに出力された結果をブラウザ側で後から操作するものです。 ゆえにトップ画面に、各記事の`中身のテキスト`がそもそも出力されていないのであれば、できません。 「中身のテキスト」をご自身で出力できますか? トップ画面には``が現状出力されていますが、「中身のテキスト」は空になってしまっているようです。 もしこれが出力できなければ、素直に<%topentry_body>を使って全文出力するのみです。 ### 解決策 もし全文では長いということでしたら、JavaScriptで部分的に切り抜いてみてはいかがでしょうか。 以下のような記事一覧があったとしたら ``` あいうえおかきくけこ さしすせそたちつてと ``` こうして前半5文字に切り抜けます。 ``` $(function() { $('.post').each(function() { // 全文を取得する var target = $(this).find('.target'); // 前半5文字を取得 target.text( target.text().substr( 0, 5 ) ); // 表示する target.css('display','block'); }); }); ``` 切り抜かれるまでは表示したくないでしょうから、CSSで非表示にしてあげましょう。 ``` p{display:none;} ``` 上記のコードを実行する