質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.33%

  • JavaScript

    17538questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • HTML

    9580questions

    HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

  • jQuery

    7110questions

    jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

htmlで部品をjQueryのloadで表示ができない

解決済

回答 2

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 1,083

touwaerio

score 59

<!DOCTYPE html>
<html>

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>たいとる</title>
    <meta name="description" content="">
    <meta name="keywords" content="">
    <link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/normalize/3.0.3/normalize.css">
    <!-- アイコンフォントの利用方法 http://fortawesome.github.io/Font-Awesome/ -->
    <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
    <link rel="stylesheet" href="css/default.css">
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
    <script>
        // 画面上部にスクロールするボタン
        $(function() {
            var pageTop = $('.btn-pagetop');
            pageTop.hide();
            $(window).scroll(function() {
                if ($(this).scrollTop() > 600) {
                    pageTop.fadeIn();
                } else {
                    pageTop.fadeOut();
                }
            });
            pageTop.click(function() {
                $('body, html').animate({
                    scrollTop: 0
                }, 500, 'swing');
                pageTop.blur();
                return false;
            });
        });

       $(function() {
            $("#header").load("parts/header.html");
              $("#sidemenu").load("parts/sidemenu.html");
              $("#footer").load("parts/footer.html");
        });
    </script>
</head>

<body id="top">
    <div id="header"></div>


    <div class="body">
        <div id="sidemenu"></div>

        <div class="content">
            <div class="article">
                <h2 class="article-title">更新履歴</h2>
                <ul class="article-list">
                    <li>
                        <span class="label label_danger">New</span>
                        <span class="article-list-date">2017年4月12日</span>作成中。
                    </li>
                </ul>
            </div>

            <div class="article">
                <h2 class="article-title">このサイトについて</h2>
                <p class="article-paragraph">
                       あとでかきます。
                    <br />
                </p>
            </div>
        </div>
    </div>
    <div id="footer"></div>

    <a href="#top" class="btn-pagetop"><i class="fa fa-arrow-up"></i></a>
</body>
</html>

どこが原因なのか検討がつかないのでベタ貼りします。
これを表示しようとすると、一瞬body内の更新履歴とこのサイトについてが表示されて
その後に真っ白な画面に遷移してしまいます。
恐れ入りますがお願い致します。

追記---

header.html

<div class="header">
      <h1 class="header-title">たいとる</h1>
</div>
footer.html

    <div class="footer">
        <div class="footer-nav">
            <ul class="footer-nav-group">
                <li><a href="mailto:info@example.com?subject=問い合わせ&amp;body=ご記入ください"><i class="fa fa-envelope-o"></i>&nbsp;Mail</a></li>
                <li><a href="" target="_blank"><i class="fa fa-twitter"></i>&nbsp;Twitter</a></li>
            </ul>
        </div>
        <div class="footer-text">ホームページに関する注意事項など入ります</div>
        <div class="footer-copyright">Copyright &copy; 20xx xxxxx.</div>
    </div>
sidemenu.html

        <div class="nav">
            <ul class="nav-group">
                <li><a href="/index.html"><i class="fa fa-home"></i>&nbsp;ホーム</a></li>
                <li><a href="/other/thissite.html">このサイトについて</a></li>
                <li><a href="/java/javaindex.html">Java</a></li>
                <li><a href="/other/links.html">リンクとか</a></li>
            </ul>
        </div>

CSSはちょっと長くて文字数制限に引っかかってしまいました。
Fc2のテンプレートで書かれてたのをcssファイルにまとめただけになります。
http://web.fc2.com/fc2html/designtemplates/6/
これのstyleタグの中に書かれているものをファイルにまとめた感じです。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • s8_chu

    2017/04/14 21:53

    header.html, sidemenu.html, footer.html, default.cssの内容を追記していただけませんか?

    キャンセル

  • touwaerio

    2017/04/14 21:57

    かしこまりました、少々お待ち下さい。

    キャンセル

回答 2

checkベストアンサー

+2

こちらではそのような挙動は再現しませんでした。キャッシュの消去をしてから以下のコードをもう一度試してみていただけませんか?
index.html

<!DOCTYPE html>
<html>

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    <title>たいとる</title>
    <meta name="description" content="">
    <meta name="keywords" content="">
    <link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/normalize/3.0.3/normalize.css">
    <!-- アイコンフォントの利用方法 http://fortawesome.github.io/Font-Awesome/ -->
    <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
    <link rel="stylesheet" href="parts/default.css">
</head>

<body id="top">
<div id="header"></div>


<div class="body">
    <div id="sidemenu"></div>

    <div class="content">
        <div class="article">
            <h2 class="article-title">更新履歴</h2>
            <ul class="article-list">
                <li>
                    <span class="label label_danger">New</span>
                    <span class="article-list-date">2017年4月12日</span>作成中。
                </li>
            </ul>
        </div>

        <div class="article">
            <h2 class="article-title">このサイトについて</h2>
            <p class="article-paragraph">
                あとでかきます。
                <br/>
            </p>
        </div>
    </div>
</div>
<div id="footer"></div>

<a href="#top" class="btn-pagetop"><i class="fa fa-arrow-up"></i></a>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
    // 画面上部にスクロールするボタン
    $(function () {
        var pageTop = $('.btn-pagetop');
        pageTop.hide();
        $(window).scroll(function () {
            if ($(this).scrollTop() > 600) {
                pageTop.fadeIn();
            } else {
                pageTop.fadeOut();
            }
        });
        pageTop.click(function () {
            $('body, html').animate({
                scrollTop: 0
            }, 500, 'swing');
            pageTop.blur();
            return false;
        });
    });

    $(function () {
        $("#header").load("parts/header.html");
        $("#sidemenu").load("parts/sidemenu.html");
        $("#footer").load("parts/footer.html");
    });
</script>
</body>
</html>


parts/header.html

<div class="header">
    <h1 class="header-title">たいとる</h1>
</div>


parts/sidemenu.html

<div class="nav">
    <ul class="nav-group">
        <li><a href="/index.html"><i class="fa fa-home"></i>&nbsp;ホーム</a></li>
        <li><a href="/other/thissite.html">このサイトについて</a></li>
        <li><a href="/java/javaindex.html">Java</a></li>
        <li><a href="/other/links.html">リンクとか</a></li>
    </ul>
</div>


parts/footer.html

<div class="footer">
    <div class="footer-nav">
        <ul class="footer-nav-group">
            <li><a href="mailto:info@example.com?subject=問い合わせ&amp;body=ご記入ください"><i class="fa fa-envelope-o"></i>&nbsp;Mail</a>
            </li>
            <li><a href="" target="_blank"><i class="fa fa-twitter"></i>&nbsp;Twitter</a></li>
        </ul>
    </div>
    <div class="footer-text">ホームページに関する注意事項など入ります</div>
    <div class="footer-copyright">Copyright &copy; 20xx xxxxx.</div>
</div>


parts/default.css
入力できなかったので、こちらに記述しました。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/04/14 22:43

    ご回答ありがとうございます。
    んー、けどやっぱりうまくいかないみたいです。
    もう少しやってみてダメそうだったら、
    共通化を断念して、1ページ毎に書くようにしてみます。

    キャンセル

  • 2017/04/14 22:47

    質問文にも記述がありませんでしたが、ブラウザとOSは何を使っているのかを良ければ教えていただけませんか?

    キャンセル

  • 2017/04/15 14:38

    すいません返事が遅れましたが、
    ブラウザはchromeでOSはWindows7です

    キャンセル

0

作り直しになってしまうかもしれませんが、わたしが制作中の1500万ページ以上のサイトで、
以下のサイトを参考に作り直ししております…あと何年かかるかな

【JavaScript】ヘッダーなどHTMLの共通部分をJSで外部化してメンテナンス性を高めよう

参考までに

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/04/14 22:46

    ご回答ありがとうございます。
    こういった手法もあるのですね、
    ちょっと大変そうですが一つの手段として考えてみようと思います。

    キャンセル

  • 2017/04/14 23:18

    別ファイルのHTMLにあるリンク先には、{$root}を追記して、
    表示する場所に、writeなんちゃらと記述する必要があるので、
    すでにページが揃っていたら、大変だと思いますね…本当に参考まで

    キャンセル

同じタグがついた質問を見る

  • JavaScript

    17538questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • HTML

    9580questions

    HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

  • jQuery

    7110questions

    jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。