私は現在、新しいウェブサイトを構築しようとしていますが、特別なことは何もなく、素晴らしくて小さいですが、最初は立ち往生しています。私の問題は、きれいな URL とページ ナビゲーションです。「正しいやり方」でやりたい。
私がしたいこと:
- CodeIgniter を使用して、 「www.example.com/hello/world」のようなクリーンな URL を取得します
- jQuery は ajax の使用に役立つので、追加のコンテンツを .load() できます
- URL の # を取り除くために、pushstate などの HTML5 機能を使用したいと考えています。
ページを更新せずに前後に移動できるはずですが、ページには現在の URL に従って適切なコンテンツが表示されます。
また、404 エラーを発生させずにページをリロードできる必要があります。CodeIgniter のおかげでサイトが存在するはずです。(コントローラとビューがあります)
例:
非常に基本的な Web サイト。「foo」と「bar」という 2 つのリンクと、その下に空の div ボックスがあります。基本的な URL は example.com
です。「foo」をクリックすると、URL はリロードせずに「example.com/foo」に変わり、div ボックスは jQuery .load() で新しいコンテンツを取得します。同じことが他のリンクにも当てはまりますが、もちろんコンテンツと URL が異なります。
「foo」をクリックしてから「bar」をクリックした後、戻るボタンをクリックすると、「example.com/foo」に戻り、コンテンツが表示されます。このリンクを直接読み込むか、ページを更新すると、同じように見えます。404エラーなどはありません。
このページについて考えて、あなたならどうするか教えてください。この種のナビゲーションが本当に好きなので、いくつか試してみました。
これまでのところ...
CodeIgniter を使用してこのような URL を取得する方法を知っています。jQuery を使用して追加のコンテンツをロードする方法を知っています。html5 の pushstate については完全には理解していませんが、少なくとも何とか動作させることができました。しかし、私はそれをすべて一緒に機能させることはできません。私のコードは今めちゃくちゃです。それが、ここに投稿したくない理由です。さまざまなチュートリアルを見て、いくつかのコードを一緒にコピーして貼り付けました。私のCIフォルダをアップロードしたほうがいいと思います。
私が見たチュートリアルのいくつか:
(到達したリンクの最大数:/)
私の主な問題は、誰もがすべてのブラウザーや異なるバージョンと互換性を持たせようとして、スクリプト/jQuery プラグインなどを追加し、すべての追加コードに混乱することだと思います。実際の HTML コンテンツよりもスクリプト タグの間に多くのコードがあります。サンプルページに HTML5 を使用する最も基本的な方法を誰かが投稿できますか?
試行の失敗:
テスト ページに戻ると、URL が変更されますが、div ボックスには古いコンテンツではなく同じコンテンツが表示されます。また、リンクの href 属性に従ってスクリプト内の URL を変更する方法もわかりません。クリックしたリンクに応じて変化する $(this).attr('href') のようなものはありますか? 現時点では、リンクごとにスクリプトを使用する必要がありますが、これはもちろん悪いことです。サイトを更新すると、CodeIgniter が起動してビューをロードしますが、実際には、ページ全体ではなく、ajax でロードしたビュー自体のみです。しかし、レイアウトと適切なコントローラー設定で簡単に修正できるはずです. これにはまだあまり注意を払っていません。
助けてくれてありがとう。提案、アイデア、または単に何かを言及したい場合は、お知らせください。
ディラーよろしく