私はウェブデザインのコースを取っています。私と他の多くの学生は、私たちの仕事を ajax 化することに本当に興味を持っています。私たちの先生はデザインと HTML だけに興味があるので、手伝うことはできません。
正しい用語を使用したいと思います。そうでない場合は、訂正してください。ajax 化とは、ナビゲート時に Web ページの特定の部分のみを更新することを意味します。
たとえば、3 つのサブページで構成される Web ページがあるとします。
1: index.html
<!DOCTYPE html><html><head><title> Welcome! </title></head>
<body>
<div id="Content"> Welcome, dear visitor... take a look around! </div>
<div id="Menu">
<ul>
<li><a href="index.html"><b> Home </b></a></li>
<li><a href="projects.html"> Projects </a></li>
<li><a href="contact.html"> Contact </a></li>
</ul>
</div>
<div id="Footer"> Email and mediaplayer </div>
</body></html>
2:プロジェクト.html
<!DOCTYPE html><html><head><title> Projects </title></head>
<body>
<div id="Content"> All my projects are shown here! </div>
<div id="Menu">
<ul>
<li><a href="index.html"> Home </a></li>
<li><a href="projects.html"><b> Projects </b></a></li>
<li><a href="contact.html"> Contact </a></li>
</ul>
</div>
<div id="Footer"> Email and mediaplayer </div>
</body></html>
3: contact.html
<!DOCTYPE html><html><head><title> Contact </title></head>
<body>
<div id="Content"> Contact info! </div>
<div id="Menu">
<ul>
<li><a href="index.html"> Home </a></li>
<li><a href="projects.html"> Projects </a></li>
<li><a href="contact.html"><b> Contact </b></a></li>
</ul>
</div>
<div id="Footer"> Email and mediaplayer </div>
</body></html>
リンクを使用する場合:
Content-div のみをリロードする必要があります。
メニューは、どのメニューポイントがアクティブであるかを更新する必要があります (ここでは太字のタグで示されています)。それが複雑すぎる場合は、メニューのリロードが機能する可能性があります。
フッターはまったく再読み込みしないでください。
タイトルを更新する必要があります。
URL を更新する必要があります。
URLがきれいであることを本当に望んでいます。つまり、 /#projects.htmlまたは/#/projects.htmlではなく、単純な/projects.htmlまたは/projects です。
ブックマークと戻るボタンの機能は非常に重要です。
これはまったく可能ですか?ここで私を助けてくれた人に、私は永遠にめちゃくちゃ感謝しています!:-D jQuery Address および History プラグイン、 History.js、およびその「要点」を試しました (そしてハッキングしました) 。それを機能させることができませんでした。私はスタックオーバーフローとグーグルをトロールしましたが、これらのことを説明したり、簡単な解決策を持っている人を見つけることができないようです.
最新の Web ブラウザを対象としたソリューションで問題ありません。IE 関係者と JavaScript を使用しない関係者が単純な html バージョンを入手できれば、それは素晴らしいことですが、絶対に必要というわけではありません。
助けてください - どんな助けでも非常に感謝しています! ありがとう!:-)