ホームページ >バックエンド開発 >PHPチュートリアル >AJAX と組み合わせた PHP 開発後の戻る、進む、および更新 (1)_PHP チュートリアル

AJAX と組み合わせた PHP 開発後の戻る、進む、および更新 (1)_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-15 13:23:35697ブラウズ

はじめに

パート 1 では、Sajax、PHP、JavaScript を使用して基本的なフォト アルバムを開発する方法を紹介します。アプリケーションの履歴スタックを構築するときは、クライアント側のテクノロジーに依存し、それをパート 1 のコードに直接結び付けます。この記事は、読者が JavaScript とブラウザーの Cookie についての知識があることを前提としています。

ブラウザにステータスを保存

Web サーフィン中は、常にあるページから別のページ、あるサイトから別のサイトに移動します。このプロセスでは、Web ブラウザーはユーザーがどこにいたのかの履歴を忠実に記録し、出発点に段階的に戻ることができるパンくずリストのデジタル痕跡を作成します。 「戻る」ボタンを使用すると、前の操作を行う前の状態に戻ることができ、この意味では Web の「元に戻す」ボタンと言えます。

Webはページごとに区切られたメディアです。ブラウザのツールバーにある「戻る」ボタンと「進む」ボタンは、ブラウザをあるページから別のページに誘導します。 Macromedia の Flash が大流行したとき、開発者とユーザーは、リッチ インターネット アプリケーション (RIA) がその常識を打破したことに気づきました。ユーザーはいくつかのサイトを閲覧し、Flash ベースのサイトにログインして数分間過ごすことができます。ユーザーが戻るボタンをクリックするとゲームは終了します。ユーザーは以前の Flash サイトに戻っておらず、どこに来たのかわかりません。

RIA の別の形式である、完全に Ajax ベースの Web サイトにも同じことが当てはまります。ユーザーがページを複数回操作できる Web サイトは、「戻る」ボタンや履歴ボタン (さらに言えば) の影響を受けやすくなります。 「進む」ボタンと「リロード」ボタンに関する問題は、「戻る」ボタンに関する問題と同じです。 Web ブラウザに組み込まれた内部履歴メカニズムは、避けられない問題です。セキュリティ上の理由から、開発者はブラウザの履歴や関連ボタンを改ざんすることはできません。使いやすさの問題もあります。 「戻る」ボタンが突然ポップアップして不可解な警告が表示されたり、ユーザーが新しい Web サイトに飛ばされたりした場合、ユーザーがどれほど混乱するか想像してみてください。

履歴スタックを構築する

ブラウザの履歴を変更することはできませんが、RIA で使用する履歴を構築することはできます。明らかに、ブラウザの標準ナビゲーション ツールとはある程度分離している必要がありますが、前述したように、リッチ アプリケーションは Web の標準的なページ間のパターンから多少逸脱しています。

アプリケーションの履歴イベント レコードを管理するためのスタックを構築します。これは、リストを保存し、リストの最後に要素を追加することを意味します。スタックは、後入れ先出し (LIFO) 順序でデータを格納するために使用されます。スタックの最上位にあるデータはロールバック中に削除されませんが、このモデルは私たちのニーズに非常に近いものです。 JavaScript では、配列を使用してスタックを管理できます。

スタックと一緒に、スタック内の現在の位置を示すポインターも付いています。アプリケーションをクリックすると、新しいイベントがスタックの一番上にプッシュされ、ポインターは追加された最後の要素を指します。アプリケーションの「戻る」ボタンと「進む」ボタンをクリックすると、新しいイベントはスタックに追加されませんが、スタックのポインターは移動します。 [戻る] ボタンを使用したときに履歴スタックで何が起こるかを考えてください。ブラウザは最後に表示したページに戻り、以前は使用できなかった [進む] ボタンが突然使用できるようになります。新しいページを参照すると、進むボタンが再び灰色になります。ブラウザ履歴の後半に保存された要素はスタックからポップされ、新しいイベントはスタックの一番上にプッシュされます。作成する履歴スタックでこの動作を再現します。

私たちの目標は、図 1 に示すように、使用可能な履歴ボタンのセット (「戻る」、「進む」、「更新」) を作成することです。


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/446841.html技術記事はじめに パート 1 では、Sajax、PHP、および JavaScript を使用して基本的なフォト アルバムを開発する方法を示します。アプリケーションの履歴スタックを構築する際には、クライアント側のテクノロジーに依存し、それを直接導入します...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。