(57)【特許請求の範囲】
【請求項１】
ユーザー装置とコンテンツサイトとの間で仲介をするコンピュータシステムであって、前記コンピュータシステムが、１つ以上のコンピューティング装置を含み、かつ、少なくとも、
前記ユーザー装置からコンテンツページに対する要求を受信する前に、前記コンテンツサイトから前記コンテンツページを取得することと、
前記コンテンツページのプレビューを生成することであって、前記コンテンツページのプレビューが、
前記コンテンツページの少なくとも一部の画像と、
前記画像に対する要求を送信する第１の命令および前記コンテンツページに対するフォローアップ要求を送信する第２の命令を含むマークアップコードと
を含む、前記コンテンツページのプレビューを生成することと、
前記ユーザー装置から前記コンテンツページに対する要求を受信することと、
前記要求を受信することに応答して、
前記要求がフォローアップ要求でないと判断すると、前記マークアップコードを前記ユーザー装置に送信することと、
前記要求がフォローアップ要求であると判断すると、前記コンテンツページの非プレビューバージョンを前記ユーザー装置に送信することと
を行うようにプログラミングされている、コンピュータシステム。
【請求項２】
前記コンテンツページのプレビューを、前記ユーザー装置のディスプレイ特性に少なくとも一部基づき生成するようにさらにプログラミングされている、請求項１に記載のシステム。
【請求項３】
前記マークアップコードが画像マップを含み、かつ前記画像マップが前記画像のクリック可能領域を定義し、前記クリック可能領域が前記コンテンツページ上のリンクに対応する、請求項１に記載のシステム。
【請求項４】
前記フォローアップ要求が、前記コンテンツページに対するＵＲＬを含み、前記ＵＲＬが、前記ＵＲＬがフォローアップ要求と関連付けられていることを示すクエリー文字列を含む、請求項１に記載のシステム。
【請求項５】
ユーザー装置とコンテンツサイトとの間で仲介をするコンピュータシステムであって、前記コンピュータシステムが、１つ以上のコンピューティング装置を含み、かつ、
前記ユーザー装置から前記コンテンツサイトのページに対する要求を受信する前に、前記ページを取得することと、
前記ページのプレビューを生成して、前記プレビューを前記コンピュータシステムのキャッシュ内に格納することと、
前記プレビューを生成した後に、前記ユーザー装置から前記ページに対する要求を受信することと、
前記要求に、少なくとも、
前記ページの非プレビュー表現が前記ユーザー装置上でロードされている間に、前記ユーザーがページコンテンツを提示されるように、前記ページの前記プレビューを、前記ユーザー装置上に一時的に表示するために前記ユーザー装置に配信することと、
前記ページの前記非プレビュー表現を配信することであって、前記非プレビュー表現が、前記ページに対する前記要求に応答して、前記コンピュータシステムによって取得されたページコンテンツに基づく、前記ページの前記非プレビュー表現を配信することと
によって、応答することと
を含む、プロセスを実行するようにプログラミングされている、
コンピュータシステム。
【請求項６】
前記ページを前記コンテンツサイトから取得することと、スケジュールに従って前記ページの前記プレビューを生成することと
を含むプロセスを実行するようにさらにプログラミングされている、請求項５に記載のコンピュータシステム。
【請求項７】
対象とするユーザー装置の特性に少なくとも一部基づき、前記ページの前記プレビューを生成すること
を含む、プロセスを実行するようにさらにプログラミングされている、請求項５に記載のコンピュータシステム。
【請求項８】
前記特性が、ディスプレイサイズまたはディスプレイ解像度の１つを含む、請求項７に記載のコンピュータシステム。
【請求項９】
第２のユーザー装置からの要求に応答して取得したコンテンツに少なくとも一部基づき、前記ページの前記プレビューを生成すること
を含む、プロセスを実行するようにさらにプログラミングされている、請求項５に記載のコンピュータシステム。
【請求項１０】
前記プレビューおよび前記非プレビュー表現を前記ユーザー装置に並行して配信すること
を含む、プロセスを実行するようにさらにプログラミングされている、請求項５に記載のコンピュータシステム。
【請求項１１】
特定の命令を実行するように構成された１つ以上のプロセッサを備えたユーザー装置によって実施される、コンテンツページを要求するためのコンピュータ実装方法であって、前記コンピュータ実装方法が、
前記ユーザー装置とコンテンツサイトとの間で仲介をするように構成された中間システムに、コンテンツページに対する要求を送信することと、
前記要求に応答して前記中間システムから、前記要求されたコンテンツページのプレビューを受信することであって、前記プレビューが、前記要求されたコンテンツページの少なくとも一部の画像を含み、前記プレビューは前記要求を送信する前に生成されている、前記要求されたコンテンツページのプレビューを受信することと、
前記プレビューを表示させることと、
前記プレビューを表示させることに続いて、前記要求されたコンテンツページを、前記中間システムから受信することと、
前記要求されたコンテンツページを前記プレビューの代わりに自動的に表示させることと
を含む、コンテンツページを要求するためのコンピュータ実装方法。
【請求項１２】
前記プレビューが複数の画像を含み、前記複数の画像の各画像が、前記要求されたコンテンツページの別個の部分に対応する、請求項１１に記載のコンピュータ実装方法。
【請求項１３】
前記プレビューが、コンテナ要素に対するソースとして前記要求されたコンテンツページを参照するマークアップコードを含む、請求項１１に記載のコンピュータ実装方法。
【請求項１４】
前記要求されたコンテンツページを隠されたコンテンツペインにレンダリングすることをさらに含む、請求項１１に記載のコンピュータ実装方法。
【請求項１５】
前記要求されたコンテンツページを表示させることが、前記隠されたコンテンツペインを表示させることを含む、請求項１４に記載のコンピュータ実装方法。
【発明の詳細な説明】
【技術分野】
【０００１】
背景技術
ユーザーがウェブページまたは他のコンテンツページをブラウザ経由で要求する場合、ユーザーは通常、ページが完全にまたは部分的にせよ表示されるまでに著しい遅延を経験する。様々な要因がこの遅延に対する原因となり得る。これらの要因は、例えば、（１）ユーザーの装置とインターネットとの間の無線または有線接続の速度、（２）ページをホストするオリジンサーバーの位置、およびそれへのロード、（３）埋込み画像を含む、ページのサイズ、（４）ページのＨＴＭＬがロードされた時点で別々に（おそらくは、異なるドメインから）取得される必要がある埋込みオブジェクトをページが含むかどうか、および含む程度、（５）任意のスクリプトを含む、ページのコーディングの複雑さ、ならびに（６）ユーザーの装置の処理能力を含む。遅延が著しい（例えば、数秒以上）場合、閲覧タスクは、ユーザーにとって苛立たしいことがあり得る。
【発明の概要】
【発明が解決しようとする課題】
【０００２】
序論
ページコンテンツの表示前に経験される遅延が削減されるように、ページのロードイベント中に、ユーザーにプレビューコンテンツ（例えば、ページプレビュー、介在ページ（ｉｎｔｅｒｓｔｉｔｉａｌ  ｐａｇｅ）など）を提供するためのプロセスが開示される。いくつかの実施形態では、プレビューコンテンツは、ページの未修正バージョンと比べて、ロード特性（例えば、待ち時間、帯域幅利用、サイズ、レンダリング時間、またはユーザー認識ロード時間）を改善するように、最適化されているか、一部最適化されているか、または別の方法で修正されている、コンテンツページのバージョンであり得る。本プロセスは、ユーザー装置とコンテンツサーバーとの間に論理的に位置する中間システム内で部分的または全体的に実装され得る。いくつかの実施形態では、本プロセスは、コンテンツ配信ネットワーク（ＣＤＮ）によって実装され得る。本プロセスは、いかなるブラウザ修正も必要とすることなく、既存のブラウザで使用され得るか、またはページプレビューおよび非プレビューバージョンを処理および表示するための特別なプログラムコードを含む、「プレビュー認識」ブラウザで使用され得る。かかる「プレビュー認識」ブラウザが使用される場合、本プロセスは、仲介をしない第三者サーバーによって実装され得る。
【課題を解決するための手段】
【０００３】
一実施形態によれば、中間システムは、様々なコンテンツサイトの、ウェブページなどの、コンテンツページをプリフェッチして、これらのページのプレビューを生成およびキャッシュする。プレビューは、プレビューを表示するために最小限のブラウザ処理が要求されるように、ページのスクリーンショット画像（「スクリーンショット」）を含むか、またはそれらから成り得る。同じページの異なるプレビュー（例えば、異なるスクリーンショット解像度）が、スマートフォン、タブレット、ＰＣなどの、異なるユーザー装置タイプまたはフォームファクタに対して生成およびキャッシュされ得る。いくつかの実施形態では、プレビューが生成される時にページのリンク（または他のアクティブなコンテンツ）の一部または全部が保存され得、それにより、ユーザーは、プレビューを見ている間に、例えば、リンクを選択する／辿ることができる。いくつかの実施形態では、プレビューは、いかなるスクリーンショットも含まないか、またはスクリーンショットと非スクリーンショットファイルの組合せを含み得；例えば、プレビューは、ページの非テキストの全てを含むスクリーンショット、およびページのテキストコンテンツを含むテキストオーバーレイの２つの部分で配信できる。
【０００４】
一実施形態では、ユーザー装置が、プレビューが存在するページを要求すると、中間システムは、実際のページを（通常は、対応するオリジンサーバーから）取得する間に、そのページのキャッシュされたプレビューを返す。ユーザー装置上で実行するブラウザは、中間システムがページを取得して配信する間に、このプレビューを表示する。（中間システムは、実際のページをブラウザに配信する前に、その部分をプリレンダリングするか、または別の方法で修正し得る）。ブラウザがバックグラウンドでページをレンダリングする間、プレビューが表示され続け得る。一旦、実際のページがロードされると、ブラウザは、プレビューを実際のページと置き換えることにより表示を更新する。この更新が生じる前に、ユーザーがプレビューをスクロールダウンするか、またはズームする場合、ブラウザは、好ましくは、かかるスクロールまたはズームを、表示の更新時に実際のページに適用する。
【０００５】
いくつかの実施形態またはユースケースでは、実際のページを返すのではなく、中間システムはページの１つ以上の部分を返すだけの可能性がある。例えば、中間システムは、プレビューと異なる（または意味のある方法で異なる）部分のみを返し得るか、またはスクリーンショットとして配信された部分を返すのみであり得る。これらの実施形態では、ブラウザは、プレビューの１つ以上の特定の部分を置き換えるか、または上書きすることにより、ページプレビューの表示を更新するように構成され得る。
【０００６】
いくつかの実施形態では、サイトの所有者または他のコンテンツプロバイダーは、特定のコンテンツ項目または項目のグループに対して使用されるべきプレビューコンテンツを提供または指定し得る。サイトの所有者は、プレビュー画像のユニフォームリソースロケーター（「ＵＲＬ」）をハイパーテキストマークアップ言語（「ＨＴＭＬ」）ファイルの特定のタグ内に含めることなどにより、データをコンテンツ項目内に埋め込み得る。コンテンツ項目に対する要求を処理する中間システムは、その特定のタグを認識して、参照された位置にあるプレビュー画像を、要求しているユーザー装置に提供し得る。プレビューがユーザー装置に伝送されている間に、または伝送の完了に続いて、中間システムは、ユーザー装置に伝送するために、要求されたコンテンツの現在のバージョンを取得できる。
【０００７】
中間システムは、いくつかの実施形態では、特定のユーザーに対するページを、かかるユーザーの閲覧セッション中に、予測的にプリフェッチし得、これらのページのプレビューを生成してキャッシュ（または先行して配信）し得る。例えば、中間システムが、ユーザー／装置の代わりにページを取得する場合、中間システムは、ページ上のリンクの一部または全部を予測的に辿り、これらのページのプレビューを生成し得る。ユーザーがその後、予測的に辿られたリンクの１つを選択する場合、中間システムは次いで、前述のようにプレビューを配信し得る。いくつかの実施形態では、中間システムは、どのリンクまたは複数のリンクをユーザーが最も起動しそうであるかを判断して、それらのリンクされたコンテンツ項目の非プレビューバージョンを予測的にプリフェッチし得、同時に、ユーザーがあまり要求しそうにないかも知れないリンク項目のプレビューバージョンも予測的に提供する。例えば、ユーザーが最も要求しそうなリンク項目が非プレビューバージョンとしてプリフェッチされ得、他方、ユーザーが２番目に最も要求しそうなリンクされたコンテンツ項目のプレビューバージョンが生成され得、かつ／またはユーザー装置に先行して提供され得る。予測的なプリフェッチが実装される場合、中間システムは、ユーザーのクッキーのコピーを保持し得、予測的にリンクを辿る場合に関連するクッキーを伝送し得；このようにして、予測的にプリフェッチされたページ（およびそれらのプレビュー）がユーザーに対してパーソナライズされ得る。
【０００８】
参照番号は、図面を通して、参照される要素間の対応を示すために再使用され得る。図面は、本明細書で説明する実施形態例を図示するために提供され、本開示の範囲を制限することは意図しない。
【図面の簡単な説明】
【０００９】
【図１】一実施形態に従って、コンテンツページのプレビューを生成および配信する中間システムを示す。
【図２】一実施形態に従って、ページプレビューが生成され、実際のページがロードされている間にユーザー装置上に一時的に表示され得るプロセスを示す。
【図３】ページプレビューを配信して一時的に表示するために、既存のブラウザで使用され得るプロセスを示す。
【図４】コンテンツページをプリフェッチして、そのプレビューを生成するために、中間システムによって実装され得るプロセスを示す。
【図５】コンテンツ項目の非プレビューバージョンが取得される間に、コンテンツ項目例のプレビューを表示するブラウザインタフェースを示す。
【図６】最初にコンテンツ項目のプレビューを提供し、コンテンツ項目の非プレビューバージョンも取得することにより、コンテンツ項目に対する要求に応答するためのプロセスを示す。
【図７】コンテンツ項目を要求し、非プレビューバージョンが取得される間に、コンテンツ項目のプレビューバージョンを表示のために受信するためのプロセスを示す。
【発明を実施するための形態】
【００１０】
システム構成要素
図１は、前述の通りに動作可能な中間システム３０の一実施形態を示す。中間システム３０は、ユーザー装置３２（例えば、スマートフォン、タブレット、ＰＣ、電子書籍端末など）と、ウェブサイトなどの、コンテンツサイト３４との間で仲介をする。いくつかの実施形態では、中間システム３０は、例えば、プロキシサーバー、特定のブラウザまたは装置タイプに対する部分レンダリングエンジン、ＣＤＮ、インターネットサービスプロバイダ（「ＩＳＰ」）システム、またはそれらの組合せであり得るか、またはその機能を果たし得る。各ユーザー装置３２は、標準プロトコルに従って、コンテンツページの取得および表示が可能なブラウザアプリケーション５０（「ブラウザ」）を実行する。ブラウザ５０は、中間システム３０を経由してウェブページを取得するように設計または構成され得る。いくつかの実施形態では、ブラウザ５０は、ページプレビューを表示するように明確に設計または構成されていない、従来型のウェブブラウザであり得る（またはそれを含み得る）。他の実施形態では、ブラウザ５０は、ページプレビューの表示と関連した特定のタスクを処理するように明確に設計され得る。
【００１１】
コンテンツサイト３４は、通常のウェブサイトを含むか、またはそれから成り得る。ページプレビューが生成されるページは、本明細書で説明するように、プレビューの生成をサポートするための任意の特別なコーディングまたはフォーマットを含まない、従来型のウェブページであり得る。しかし、いくつかの実施形態では、中間システム３０は、特定のページに対してページプレビューが生成されるべきかどうか、またはどのように生成されるべきかを指定するために、特別なプレビュータグの使用をサポートし得る。プレビュータグがサポートされる場合、コンテンツプロバイダーは、例えば、ページのどの視覚要素またはセクションがスクリーンショットに変換されるべきか、または中間システムがどこでコンテンツページの以前に生成されたプレビューを取得し得るかを示す、例えば、タグを、コンテンツページ内に埋め込み得る。
【００１２】
図１に示すように、中間システム３０は、ページプリフェッチャ４０、プレビュー生成器４２、プレビューキャッシュ４４、およびプリフェッチ／プレビュー構成データのデータリポジトリ４６を含む。ページプリフェッチャ４０は、ページプレビューを生成する目的で、様々なコンテンツサイト３４からページをプリフェッチする責任を負う。プリフェッチされるページは、例えば、（１）管理者によって事前に選択され得、（２）ページ人気データ（例えば、中間システムによって処理されるページ要求に基づき、測定されるような）に基づき自動的に選択され得、かつ／または（３）ユーザー装置によってロードされているページのリンクを予測的に辿ることにより識別され得る。プリフェッチのために選択されたページの一部または全部に対して、ページプリフェッチャ４０は、１〜３分毎など、一定の間隔で、各ページを定期的にプリフェッチし得る。この間隔は、固定であり得るか、または、例えば、ページもしくはサイトコンテンツに対して意味のある変更が行われる頻度の評価基準に基づき、ページ毎もしくはサイト毎ベースで変動し得る。
【００１３】
ページがプリフェッチされるたびに、プレビュー生成器４２は、プリフェッチされたページのプレビューを生成し、そのプレビューを直前に生成されたプレビューの代わりにキャッシュ４４に格納する。プレビュー生成器は、同じページの複数のプレビューを、各々を特定の装置または装置特性（例えば、スクリーンサイズ、ブラウザ特性、タッチスクリーン対非タッチスクリーンなど）に合わせて、生成およびキャッシュし得る。プレビューは、プリフェッチされたページまたはその部分のスクリーンショットを含むか、またはそれから成り得る。いくつかの実施形態では、プレビューは、ユーザーがスクリーンショット内に示されたリンクを選択し、そのリンクされたコンテンツアクセスすることを可能にするＨＴＭＬ画像マップを含む、ＨＴＭＬコードも含み得る。いくつかの実施形態では、プリフェッチされたコンテンツページのプレビューを生成するのではなく、プレビュー生成器４２は、コンテンツページに対する望ましいプレビューとしてコンテンツサイト３４によって識別されるプレビュー（例えば、画像または介在ページ）をコンテンツサイト３４から取得し得る。例えば、コンテンツページの現在のバージョンまたは完全なバージョンは、そのページに対して使用されるべきプレビュー項目を識別する、メタデータ、カスタムマークアップタグ、または他の情報を含み得、プレビュー生成器は、そのプレビュー項目を取得できる。プレビュー項目は、事前に（例えば、ユーザー装置３２からコンテンツ項目に対する要求を受信する前に）取得されてプレビューキャッシュ４４内に格納され得るか、または反応的（例えば、コンテンツページに対する、ユーザー装置３２からの、要求に応答して）であり得る。
【００１４】
データリポジトリ４６によって示されるように、ページをプリフェッチしてページプレビューを生成するプロセスを制御するために、様々なタイプの構成データが保持されて使用され得る。このデータは、例えば、プリフェッチに適格なサイトまたはページのリスト、特定のページまたはサイトに対して使用されるべきプリフェッチ間隔に関するデータ、およびプレビューが生成されるべき装置または装置特性に関するデータを含み得る。前述のように、中間システム３０は、特定のユーザー装置３２上に格納されたブラウザクッキーのコピーも保持し得、これらのクッキーを使用して特定のユーザーに対するページを予測的にプリフェッチし得る。
【００１５】
ページプリフェッチャ４０の使用に追加して、またはその代替として、中間システム３０は、ユーザー装置の代わりに、中間システム３０によって取得されたページコンテンツからプレビューを生成し得る。
【００１６】
図１に示す中間システム３０の構成要素およびモジュールは例示のみであり、制限することを意図していない。いくつかの実施形態では、中間システム３０は、もっと少ないか、追加、もしくは代替の構成要素またはモジュールを含み得る。例えば、中間システム３０は、本明細書で説明するように、要求されたコンテンツ項目をユーザー装置３２の代わりに取得するコンテンツフェッチャまたは要求プロセッサを含み、非プレビューバージョンをユーザー装置３２に提供し得る。別の例として、中間システム３０は、取得されたコンテンツ項目を処理し、その処理したバージョンをユーザー装置３２に送信するブラウザ機能を備えた、レンダリングエンジンまたは何らかの他の構成要素を含み得る。いくつかの実施形態では、中間システム３０は、ユーザー装置３２と（例えば、リモートデスクトッププロトコル（「ＲＤＰ」）を使用して）リモートデスクトップ接続または何らかの同様の接続を確立し得る。中間システム３０は、ユーザー装置３２上でコンテンツ処理がほとんど、または全く行われないように、プレビューコンテンツおよび要求されたコンテンツの非プレビューバージョンをレンダリングして、レンダリングしたコンテンツの表現を表示のためにユーザー装置３２に伝送し得る。
【００１７】
ページ配信プロセスフロー
図２は、一実施形態に従って、中間システム３０がページをプリフェッチしてブラウザ要求を処理し得る一般的なプロセスを示す。イベント１で、中間システム３０は、コンテンツサイト３４からページをプリフェッチする。前述のように、このプリフェッチイベントは、定期的なスケジュールに従って起こり得るか、またはユーザー装置３２によって要求された別のページに基づき予測的に実行され得る。いくつかの実施形態では、中間システム３０は、複数のユーザー装置からのコンテンツ要求に対応するように構成され得る。かかる事例では、中間システム３０は、第１のユーザー装置からの要求に応答して、コンテンツを取得し、そのコンテンツのプレビューを生成し、次いで、それらのプレビューを後に第２のユーザー装置３２に提供し得る。コンテンツの取得およびプレビューの生成が予測的に実行される場合、中間システム３０は、いくつかの実施形態では、ユーザー装置３２およびコンテンツサイト３４に対応するクッキーをページ要求と共に送信し得る。このようにして、コンテンツサイト３４は、特定のユーザーに対してパーソナライズされるページを返し得、パーソナライズされたページのスクリーンショットが生成され得る。前述のように、ページのプリフェッチは本質的ではない。ページは単一のコンテンツサイトまたはサーバーから取得されているとして示されているが、ページのいくつかの構成要素（画像または広告など）が、別個のサーバーおよびドメインから取得され得る。
【００１８】
イベント２で、中間システム３０は、ページのプレビューを生成してキャッシュする。ユーザー装置３２に対応するクッキーを使用することなく、ページがプリフェッチされた場合、中間システム３０は、後でこのプレビューを、そのページをその後に要求する任意のユーザー装置に配信し得る。クッキーを使用してプリフェッチされた場合には、プレビューは、ユーザー装置３２に対して、またはユーザー装置３２と関連付けられたユーザーもしくはユーザーアカウントに対してパーソナライズされているとして指定され得る。
【００１９】
プレビューを生成する際に、中間システム３０は、ページ全体のスクリーンショットを生成し得るか、または各々がページのそれぞれ異なる部分の、複数のスクリーンショットを生成し得る。ページ上のアクティブなコンテンツ（リンクおよび他の選択可能な要素）を維持するために、プレビュー生成器は、各スクリーンショットに対する画像マップも生成し得る。各かかる画像マップは、当技術分野で周知のように、１つ以上のホットスポットのスクリーンショット内の座標を指定し、各かかるホットスポットの対象のＵＲＬを指定する。画像マップの複雑性を低減するために、中間システム３０は、いくつかの場合には、ユーザーによって最も頻繁に選択されるものなど、ページ上のリンクの一部のホットスポットのみを含み得る。いくつかの場合には、中間システムは、ページプレビューを生成する際に、ページのテキストの一部または全部を非画像フォーマットで格納し得；例えば、中間システム３０は、ページプレビューを生成するために、ブラウザ５０によって画像ファイルと組み合わすことができる、テキストオーバーレイファイルを作成し得る。
【００２０】
いくつかの実施形態では、中間システム３０は、プレビューが表示されている間に、対話式コントロールまたは他のオブジェクトの使用を容易にするための、実行可能コードまたはコンテンツのカスタマイズされた表現を生成し得る。例えば、ユーザー装置がプレビューコンテンツをレンダリングする場合にユーザー装置による使用のために、軽量のドキュメントオブジェクトモデル（「ＤＯＭ」）が生成され得る。ＤＯＭは、それがある所望のオブジェクト（例えば、テキストボックスまたは他の入力コントロール）、およびユーザー装置３２上のブラウザ５０にオブジェクトを適切に（例えば、入力コントロールがプレビュー画像内で示される位置に）表示するように指示するプロパティのみを含むように、簡素化され得る。コンテンツページの完全なＤＯＭ内に通常含まれる他の項目（例えば、コンテンツページの各画像または他のメディア項目を表すオブジェクト）は、かかるオブジェクトの静的可視表現がプレビュー画像の一部であり得るので、軽量ＤＯＭから除外できる。ユーザーは、従って、たとえ、要求されたコンテンツの完全に機能する非プレビューバージョンではなく、実質的に静的なプレビューが表示されている場合であっても、ある程度の相互作用性を提供され得る。
【００２１】
イベント３で、ユーザー装置３２は、続いてページを要求する。イベント４およびイベント５では、それらは時間的に重なり得る（例えば、並行して実行され得る）か、または、示すものとは異なる順序で実行され得るが、中間システム３０は、（ａ）キャッシュされたページプレビューをユーザー装置３２に返すこと、および（ｂ）要求されたページをユーザー装置３２の代わりにコンテンツサイト３４から取得することにより、ページ要求に応答する。イベント４でプレビューを配信するために使用されるプロセスは、装置のブラウザ５０がページプレビューの表示をサポートするかどうかによって決まり得る。従来型のブラウザの場合のように、ページプレビューの表示をサポートしない場合、中間システム３０はまず、ブラウザ５０に１つ以上のキャッシュされたスクリーンショット（または他のキャッシュされたプレビューオブジェクト）を中間システム３０から取得するように指示する、本明細書でＨＴＭＬプレビューファイルと呼ばれる、特別なＨＴＭＬを返し得る。このプロセスは、図３に関連して、以下で説明する。
【００２２】
イベント５および／またはイベント７と重なり得る、イベント６で、ブラウザ５０は、ページプレビューを表示する。通常、ページプレビューは、プレビューが配信されなかった場合に実際のページが表示され得るよりも著しく速く表示される。これにはいくつかの理由がある。第１に、プレビューが既に中間システム３０上にキャッシュされているので、コンテンツサイト３４からのページの取得に関連した伝送遅延が回避される。第２に、コンテンツサーバー３４または第三者サーバー（例えば、ＣＤＮサーバー）からの任意の埋込みオブジェクトの要求に関連した追加の伝送遅延が通常、回避される。第３に、プレビューを生成するために使用されるプロセスに応じて、プレビューは、実際のページよりも迅速に配信および表示されることが可能であり得る。例えば、通常、ブラウザ５０の処理遅延という結果となる複雑なコーディングが、プレビューから省かれ得、到着時にプレビューがより迅速に表示されるのを可能にする。別の例として、ジョイントフォトグラフィックエキスパートグループ（「ＪＰＥＧ」）規格に従って作成された画像などの、コンテンツページのプレビュー画像は、全体として要求されたコンテンツ項目よりも大幅に小さいデータサイズを有し得、従って、例えば、完全なウェブページよりも迅速に伝送され得る。
【００２３】
プレビューが配信されて表示される速度は、プレビューを特定の装置タイプまたはフォームファクタに対して最適化することによりさらに向上できる。例えば、スクリーンショットがより速く配信できるように、スマートフォンに対してはタブレットと対比して低いスクリーンショット解像度が使用され得る。（スクリーンショット解像度は、モバイル機器のユーザーが、どの程度頻繁かつ迅速に特定のページまたはページ一般上でズームする傾向があるかに関して集約されたブラウザ報告データにも基づいて選択され得る）。別の例として、ページは、ユーザー装置の画面寸法に基づき（複数のスクリーンショットを生成する目的で）細分され得る。例えば、１つのスクリーンショットは、装置の画面寸法を所与として、ページが最初に表示される時に画面上に出現する、ページの「上半分の」部分に対して生成され得る。必要に応じて、ユーザーがスクロールできる、ページの残り（下半分）の部分の１つ以上の追加のスクリーンショットが生成され得る。このアプローチでは、プレビューの上半分部分が、ページ全体に対して単一のスクリーンショットが使用された場合に表示され得るよりも迅速に表示されるように、上半分のスクリーンショットがまず、配信されて表示され得る。
【００２４】
いくつかの実施形態またはユースケースでは、中間システム３０は、下半分のコンテンツがプレビューに含まれないように、上半分のスクリーンショットを配信するだけであり得る。これは、ユーザーが、プレビュー表示ステージ中に、ページ上でスクロールダウンする可能性が低い場合に適切であるか、または望ましくあり得る。中間システム３０は、（１）ユーザーが特定のページ上でスクロールダウンする頻度（および速度）に関するデータ、ならびに（２）プレビューが実際のページと置き換えられる前に、プレビューが表示される推定時間、などの、１つ以上の要因に基づき、このアプローチを特定のページに対して使用するかどうかを判断し得る。
【００２５】
イベント７で、中間システム３０は、イベント５で取得したページコンテンツに基づき、ページの非プレビューバージョンをブラウザに配信する。ページの非プレビューバージョンは、コンテンツサイト３４から取得されたページの実質的に現在のバージョンであり得る。いくつかの実施形態では、中間システム３０は、ページの実質的に現在のバージョンと、クライアント装置３２に対して以前に提供されたプレビューバージョンとの間の差の分析を実行し得る。実質的に現在のバージョンとプレビューバージョンとの間の差の表現が次いで、クライアント装置３２に提供され得る。例えば、置換テキスト、置換画像または画像の部分、置換バイト範囲、および同様のものなどの、１つ以上のプレビュー更新が、生成されて、クライアント装置３２に送信され得る。ブラウザ５０は次いで、プレビュー更新（複数可）をプレビューバージョンに適用すること、プレビューバージョンの１つ以上の部分をプレビュー更新（複数可）と置き換えること、プレビュー更新（複数可）をプレビューバージョンの対応する部分（複数可）に重ね合わせることなどにより、非プレビューバージョンを表示できる。
【００２６】
非プレビューバージョンは、イベント５で取得したページとフォーマットが同一であり得るか、またはその修正されたか、もしくは部分バージョンであり得る。中間システム３０は、非プレビューバージョンを生成するために、取得したページを様々な方法で修正または最適化し得る。例えば、中間システム３０は、ページ上で選択された画像を、とりわけモバイル機器に対して、より迅速にロードすることを可能にするために、それらの画像の解像度を低下し得る。別の例として、中間システム３０は、通常は、ブラウザによって別々に取得され得る、埋込み画像またはオブジェクトを含む、ページ全体を完全に表す単一のファイルを生成して配信し得る。さらに別の例として、中間システム３０は、プレビューと異なるか、またはプレビューから省かれた部分などの、ページのある部分のみを配信し得る。従って、イベント７で配信される非プレビューバージョンは、イベント５で取得されるページとフォーマットが異なり得、かつ／または実際のページの不完全表現であり得る。
【００２７】
いくつかの実施形態では、図２に示すように、要求されたコンテンツの非プレビューバージョンが、ブラウザ５０からの第２の要求またはフォローアップ要求なしで配信され得る。例えば、プレビュー認識ブラウザは、ＳＰＤＹ、ＷｅｂＳｏｃｋｅｔ、または同様のものなどの、双方向通信プロトコルを使用して、中間システム３０と通信し得る。一旦、ユーザー装置およびネットワークシステム（中間システム３０など）が双方向通信プロトコルを使用して接続を確立すると、ネットワークシステムは、ハイパーテキスト転送プロトコル（「ＨＴＴＰ」）接続で通常要求されるように、第１にユーザー装置からの要求を要求することなく、コンテンツ項目および他のデータをユーザー装置に伝送し得る。かかる双方向通信プロトコルを使用することにより、中間システム３０は、コンテンツ要求に応答して、プレビューコンテンツをユーザー装置３２に送信できる。続いて、または並行して、中間システム３０は、クライアント装置３２からの第２の要求を要求することなく、要求されたコンテンツページの非プレビューバージョンをクライアント装置３２に伝送できる。
【００２８】
いくつかの実施形態では、ユーザー装置３２は、ページの非プレビューバージョンを中間システム３０から受信するのではなく、実際のページをコンテンツサイト３４から取得し得る。かかる場合には、ユーザー装置３２は、プレビューに対する当初の要求を中間システム３０に伝送し、その後（または並行して）コンテンツサイト３４から実際のページを要求し得る。ユーザー装置３２またはその上で実行するブラウザ５０は、当初、中間システム３０からのプレビューを要求し、その間にコンテンツサイト３４から実際のページをさらに取得しているように構成され得る。代替として、中間システム３０がユーザー装置３２に送信するプレビューまたは他のデータは、ブラウザ５０に、実際のページを、中間システム３０から受信するのを待つのではなく、コンテンツサイト３４から取得するように指示し得る。
【００２９】
非プレビューバージョンがユーザー装置３２上にロードされると、それは、ブラウザによって隠して保持される。例えば、非プレビューバージョンは、別個のフレームバッファ内にロードされ得るか、または隠し「タブ」、ブラウザウィンドウ、もしくはブラウザ５０によってサポートされる他のコンテンツ表示要素にレンダリングされ得る。図２のイベント５およびイベント７は、中間システム３０が、ページの非プレビューバージョンの部分を、他の部分を取得している間に配信できるように、重なり合い得る。前述のように、他の実施形態では、中間システム３０は、プレビューと異なる（または意味があるように異なる）部分などの、実際のページのある部分を配信するだけであり得る。
【００３０】
イベント８で、ブラウザ５０は、イベント７で受信したコンテンツに基づき、プレビューの表示を非プレビューバージョンの表示と置き換える。（中間システム３０が、プレビューと異なる部分を配信するだけの場合、ブラウザ５０は、代替として、関連部分を置き換えることにより更新し得る）。例えば、非プレビューバージョンがロードされて隠しタブにレンダリングされた場合は、隠しタブが非隠し状態にされ得るか、または別の方法で可視状態にされ得、他方、プレビューが表示されたタブが隠され得る。通常のユースケースシナリオでは、この遷移は、プレビューの表示の数秒後に生じる。ユーザーの観点からすれば、プレビューから実際の（非プレビュー）ページへの遷移は、通常、従来型のブラウザがページのロードを終える時に生じる遷移と見かけは同様である。従って、ユーザーは通常、プレビューから実際のページへの遷移が生じていることに気付かないであろう。通常、実際のページのビジュアルコンテンツは、特に、中間システム３０がページのプレビューを頻繁に（例えば、数分ごとに）生成する場合、プレビューのビジュアルコンテンツと同一または同様であろう。
【００３１】
前述のように、いくつかの実施形態では、プレビューは、テキストボックスまたは他の入力コントロールなどの、対話型オブジェクトを含み得る。ユーザーは、イベント７またはイベント８の前に、かかるオブジェクトとやりとりし得る。例えば、テキストボックスを含めると、ユーザーがテキストをテキストボックスに入力し始めることを可能にできる。ユーザー装置３２がイベント８でプレビューを非プレビューバージョンと置き換える場合、ユーザー装置３２は、テキストボックスの一時的なプレビューバージョンのコンテンツを非プレビューバージョンにコピーでき、ユーザーがいかなる作業も失うことがないように、また非プレビューに対する変更がシームレスに、または実質的にシームレスに生じるように見えるようにする。ユーザーがテキストをテキストボックス内に活発に入力している場合、ユーザー装置３２は、テキストボックスの非プレビューバージョンが準備できると、入力をそれに向かわせて、テキストボックスの非プレビューバージョンが表示されると、自動的に、カーソルをテキストボックスの非プレビューバージョンの適切な位置に配置し得る。
【００３２】
プレビュー認識ブラウザ５０は、非プレビューバージョンの表示前、または表示中に、入力をプレビューバージョンから非プレビューバージョンへ自動的にコピーするように構成され得、それにより、中間システム３０からのいかなる追加の命令またはコードを必要とすることなく、それを行うようになる。既存のブラウザ（例えば、プレビュー認識でないか、または入力上に自動的にコピーするカスタムコードを含んでいないもの）は、中間システム３０により、命令または他の実行可能コードを提供され得る。例えば、ＨＴＭＬプレビューファイル、または非プレビューバージョンは、プレビューバージョンから非プレビューバージョンへの入力のコピーを容易にするために、ＪａｖａＳｃｒｉｐｔまたは何らかの他の実行可能コードを含み得る。
【００３３】
いくつかの実施形態では、中間システム３０は、ページ要求時に、要求されたページのプレビューを配信するかどうかを、プログラムで判断し得る。この判断は、以下の：（１）ユーザー装置３２と中間システム３０との間、またはコンテンツサイト３４と中間システム３０との間の接続速度、（２）ページへの以前のアクセスに基づき中間システム３０に既知であり得るような、要求されたページのサイズおよび複雑さ、（３）このページの取得時、または対象とするサイト一般のページ取得時に、中間システム３０が遭遇する平均遅延（または直前の遅延）、（４）ページのコンテンツが変わる頻度、のうちの１つ以上などの、様々な要因に基づき得る。
【００３４】
既存のブラウザのための配信プロセス
図３は、ページプレビューを前から存在するブラウザ（すなわち、「プレビュー認識」ではないもの）に提供するために使用され得るプロセスを示す。この例では、中間システム３０は既にページのプレビューをそのキャッシュ４４内に有していると仮定する。図３のイベント１では、ブラウザ５０は、ページに対する要求を中間システム３０に送信する。イベント２で、中間システム３０は、実際のページの代わりに、ＨＴＭＬプレビューファイルを返す。ＨＴＭＬプレビューファイルは、前述のように、中間システム３０からブラウザ５０によって取得されるべきスクリーンショット（複数可）を指定し、各かかるスクリーンショットに対する画像マップを含み得る。かかるプレビューファイルの一例を、画像マップを除去し、テキスト「［ＩＭＡＧＥ  ＭＡＰ  ＧＯＥＳ  ＨＥＲＥ］（画像マップはここ）」で置き換えて、表１に示す。
【００３５】
【表１】
0006351611.tif 000002
【００３６】
イベント３で、ブラウザ５０は、ＨＴＭＬプレビューファイル内で参照されるプレビュースクリーンショット（複数可）を取得し得る。表１に示されるＨＴＭＬプレビューファイルは、ＣＮＮ．ｃｏｍと関連付けられたページに対応して、ｆ８４ｂｃｅｃｆ−４ｆ２２−４８０ｂ−９ｂ６ｃ−ｄｆｅ５ｆ２０６０８９ｂ．ｊｐｇという名前の単一のスクリーンショットを参照する。本明細書で説明するように、いくつかの実施形態では、複数のスクリーンショットが使用され得る。実例として、表１に示すＨＴＭＬプレビューファイル内で参照されるスクリーンショットは、ｈｔｔｐ：／／ｗｗｗ．ｃｎｎ．ｃｏｍまたは何らかの関連したサーバーからではなく、ｈｔｔｐ：／／ｓｔａｔｉｃ−ｓｃｒｅｅｎｓｈｏｔｓ．ｓ３．ｃｏｍから取得され、それは、中間システム３０または中間システム３０と関連付けられた何らかの他のサーバーもしくはシステムに対応し得る。スクリーンショットは、ページ全体のであり、画像マップはページ上のリンクの一部または全部の座標を指定し得る。ユーザーは、プレビューファイルを見ている間に、ページ上のリンクを選択する／辿ることができる。
【００３７】
いくつかの実施形態では、画像マップ以外のユーザーインタフェース機能が、プレビュー内に含まれ得る。例えば、コンテンツページが、補足的なコンテンツ（例えば、ユーザーがマウスを上に乗せた項目の説明）の表示を開始する「オンマウスオーバー（ｏｎｍｏｕｓｅｏｖｅｒ）」または「オンホバー（ｏｎｈｏｖｅｒ）」機能を含む場合、かかる機能がプレビューに含まれ得る。追加の実施形態では、かかる追加のユーザーインタフェース機能の包含は、対象とするユーザー装置の特性および性能に基づき得る。例えば、対象とする装置が、マウス入力ではなく、タッチスクリーン入力のみを有する場合、かかる機能は対象とする装置上で容易にアクセスできないので、「オンマウスオーバー」または「オンホバー」イベントハンドラーをプレビューファイルに追加するために必要な追加の処理がスキップされ得る。別の例として、実際のコンテンツページの構造に関する配置のヒントまたはデータが、プレビューと共に、またはプレビューと一緒に使用するために提供され得る。例えば、ズームするためのダブルタップなどの機能がプレビューで予想通りに機能するように、「ｄｉｖ」マークアップタグの配置が提供され得る。
【００３８】
スクリーンショットは、当初は、ユーザーに見えるＨＴＭＬ本体の唯一のオブジェクトである。指定される特定のスクリーンショットは、そのフォームファクタまたは画面サイズなどの、ユーザー装置３２の特性に基づき、中間システム３０によって選択され得る。装置３２の特性は、ページ要求と共に中間システム３０に伝達され得るか、またはページ要求と共に伝送されたクッキーもしくは他の識別子に基づき中間システム３０によって調べられ得る。
【００３９】
イベント５で、ブラウザ５０は、ページの非プレビューバージョンを表示のために準備するプロセスを開始し得る。この例では、ＩＤ「ｆｒａｍｅ」が与えられている「ｉｆｒａｍｅ」要素である、コンテナ要素が、ページの現在のバージョンをロードするために使用される。いくつかの実施形態では、「ｄｉｖ」または「ｏｂｊｅｃｔ」要素などの、異なるコンテナ要素が使用され得る。表１のサンプルＨＴＭＬファイルの「ｆｒａｍｅ．ｓｒｃ」属性に見られるように、ｉｆｒａｍｅ要素のコンテンツは、ｈｔｔｐ：／／ｗｗｗ．ｃｎｎ．ｃｏｍ  ＵＲＬに配置された文書である。中間システム３０は、クエリー文字列「？ｓｃｒｅｅｎｓｈｏｔ＿ｂｙｐａｓｓ＝１」をＵＲＬの終わりに付加している。このクエリー文字列は、オリジンサーバーまたはｈｔｔｐ：／／ｗｗｗ．ｃｎｎ．ｃｏｍと関連付けられた何らかの他のサーバーに渡されない可能性がある。むしろ、クエリー文字列は、ｈｔｔｐ：／／ｗｗｗ．ｃｎｎ．ｃｏｍに配置されたページに対するこの特定の要求が、スクリーンショットに対してではなく、実際のページに対してであることを示す、中間システム３０に対する指示であり得る。クエリー文字列「？ｓｃｒｅｅｎｓｈｏｔ＿ｂｙｐａｓｓ＝１」の存在は、ＨＴＭＬプレビューファイルが既にユーザー装置３２に伝送されていることを示す。いくつかの実施形態では、要求が、スクリーンショットではなく、実際のページで対応されるべきことを中間システム３０に信号通知するために、他の技術が使用され得る。例えば、クッキー、セルフポストフォーム（ｓｅｌｆ−ｐｏｓｔｉｎｇ  ｆｏｒｍ）、ＨＴＴＰヘッダー、および同様のものが、情報を中間システム３０に返送するために使用され得る。
【００４０】
イベント６で、中間システム３０は、要求されたページを、オリジンサーバー、ＣＤＮサーバー、またはコンテンツサイト３４と関連付けられた何らかの他のコンテンツソースから取得できる。いくつかの実施形態では、中間システム３０は、一旦、実際のページが（中間システムによる修正の有無にかかわらず）ロードし終えると、ブラウザ５０にそのページを表示するように指示する、ＪａｖａＳｃｒｉｐｔコード、または他の実行可能コードで、取得した（実際の）ページを拡張（ａｕｇｍｅｎｔ）する。これは、ＪａｖａＳｃｒｉｐｔ「オンロード（ｏｎｌｏａｄ）」イベントを使用して達成され得る。前述のように、中間システム３０は、ページに対する他の変更（例えば、画像の解像度の低減）も行い、そのページを、特定のタイプの装置への配信および表示のために、より良く最適化し得る。
【００４１】
イベント７で、ブラウザ５０は、ページの非プレビューバージョンを処理および表示できる。「ｆｒａｍｅ．ｏｎｌｏａｄ」属性に見られるように、ｉｆｒａｍｅ要素は、ｉｆｒａｍｅのコンテンツ（例えば、ｈｔｔｐ：／／ｗｗｗ．ｃｎｎ．ｃｏｍ）がロードし終えると実行するＪａｖａＳｃｒｉｐｔ関数と関連付けられる。特に、ｉｆｒａｍｅ要素のコンテンツがロードし終えると、「ｆｒａｍｅ．ｏｎｌｏａｄ」属性内に定義された関数が、ｉｆｒａｍｅ（例えば、「ｆｒａｍｅ．ｓｔｙｌｅ．ｄｉｓｐｌａｙ＝ｂｌｏｃｋ；」）を表示し、次いでスクリーンショット（例えば、「ｉｍａｇｅ．ｓｔｙｌｅ．ｄｉｓｐｌａｙ＝ｎｏｎｅ；」）を隠す命令を実行する。いくつかの実施形態では、画像が最初に隠され、次いでｉｆｒａｍｅが表示されるように、順番が逆にされ得る。
【００４２】
いくつかの実施形態では、最終文書のスクロールがシームレスに機能するように、ｉｆｒａｍｅが、その中の最終サイズのコンテンツの合理的な表現と共にロードされるのを確実にするために、追加のステップを取ることができる。ｉｆｒａｍｅ自体内でクリックされたリンクが、ｉｆｒａｍｅ内ではなく、親文書内にロードされるように、ｉｆｒａｍｅ内にロードされる文書の＜ｈｅａｄ＞に、＜ｂａｓｅ＞タグが追加できる。最後に、ブラウザ５０上での処理および記憶圧力を軽減するために、ｉｆｒａｍｅがロードされる際にスクリーンショット画像が除去できる。
【００４３】
プレビュー認識ブラウザを使用した実装
図３をさらに参照して、プレビュー認識ブラウザ５０が使用される場合、イベント５が省略され得、イベント２およびイベント３が、中間システム３０がプレビューを配信する単一のイベントと置き換えられ得る。プレビュー認識ブラウザ５０は、プレビューの表示をサポートするための他の機能も含み得る。例えば、ブラウザ５０は、ユーザーが、以下の：（１）プレビューが表示されるべきかどうか、（２）プレビューが表示されるべき条件（例えば、Ｗｉ−Ｆｉが利用可能な場合のみ、特定のサイトに対してのみ、など）、（３）プレビューに対してどのスクリーンショット解像度が使用されるべきか、（４）プレビューから広告が省かれるべきかどうか、（５）「プレビューのみ」閲覧モード（以下で説明）が使用されるべきかどうか、（６）中間システム３０が（前述のように）予測的なプリフェッチを実行すべきかどうか、およびそうである場合には、パーソナライズされたプレビューをサポートするために、ユーザーのクッキーが使用されるべきかどうか、のうちの１つ以上を指定することを可能にするためのユーザー設定メニュー（または設定ページへのリンク）を含み得る。
【００４４】
予測的なプリフェッチが使用される場合、プレビュー認識ブラウザ５０は、対応するページが要求される前に、予測的に生成されたプレビューがユーザー装置３２に配信され得るように、バックグラウンドでプレビューの受信およびキャッシュも可能であり得る。いくつかの実施形態では、中間システム３０は、現在要求されているか、または表示されているコンテンツ項目によって参照されるコンテンツ（例えば、ハイパーリンクコンテンツ）を予測的にプリフェッチし得る。
【００４５】
図５は、コンテンツ項目を表示しているブラウザインタフェース例５００を示す。実例として、図５に示すコンテンツ項目は、他のコンテンツ項目へのいくつかのリンクを含む「トップ記事」欄５１０を有する。中間システム３０は、現在のユーザーが（例えば、ユーザーの以前のコンテンツ要求および／または人口統計情報の分析に基づき）「トップ記事」欄５１０内のどのリンクを次にクリックしそうであるか、または任意のユーザーが一般に、次にどのリンクをクリックしそうであるか、に関する予測を生成する機能を含み得る。ブラウザ５０がプレビュー認識ブラウザである場合、中間システム３０は、要求される可能性のコンテンツのプレビューを伝送できる。ブラウザ５０がプレビュー認識ブラウザではない場合などの、いくつかの実施形態では、中間システム３０は、ユーザー装置３２に送信されるプレビューファイル内にコードを含み得る。ユーザー装置３２は、後で最も要求される可能性が高い、リンクされたコンテンツ項目に対するプレビュー画像をプリフェッチするために、追加されたコードを実行し得る。
【００４６】
いくつかの実施形態では、中間システム３０は、後で要求される可能性が低い１つ以上のコンテンツ項目に対するプレビューを（例えば、前述した技術の１つを使用して）ユーザー装置３２に送信させ得、他方、後で要求される可能性が最も高い１つ以上のコンテンツ項目に対する完全なバージョンまたは非プレビューバージョンを、ユーザー装置３２に送信させる。このようにして、ユーザー装置３２は、次に最も要求される可能性が高いコンテンツ項目の非プレビューバージョンに容易にアクセスでき、その一方で、全ての項目の非プレビューバージョンを取得するために必要な帯域幅および格納スペースを消費することなく、次に要求される可能性が低いコンテンツ項目の少なくともプレビューにもアクセスできる。
【００４７】
図５に示すコンテンツ項目は、テキストボックス５３０も含む。前述のように、かかるテキストボックス５３０はプレビュー上に表示され得、それにより、ページの非プレビューバージョンが受信または表示される前に、ユーザーがテキストボックス５３０にテキストの入力を開始することを可能にする。中間システム３０は、テキストボックス５３０がプレビューのテキストボックスと同じ位置になるように、テキストボックス５３０の表示位置に関する座標、テキストボックス５３０の挙動方法（例えば、フォントに関するスタイル情報など）、および同様のものなどの情報をブラウザ５０に提供し得る。
【００４８】
図５に示すコンテンツ項目は、中央コンテンツ領域５４０を含む。実例として、コンテンツ項目は、ニュースウェブページであり得、中央コンテンツ領域５４０は、現在のトップ記事、ニュース速報、または同様のものを示すために使用され得る。いくつかのブラウザアプリケーションは、特定の領域上でのユーザーによるダブルタップに応答して、ユーザーが、中央コンテンツ領域５４０などの、特定の領域上の表示を迅速にズームするのを可能にする。従来の方式では、ブラウザは、ダブルタップに応答して、特定の領域上での表示をズームする方法を判断するために、＜ｄｉｖ＞タグまたは＜ｔａｂｌｅ＞の列などの、コンテンツページの様々な機能を使用する。中央コンテンツ領域５４０が３列テーブル（例えば、「トップ記事」欄５１０のための第１の列、中央コンテンツ領域５４０のための第２の列、および広告５２０のための第３の列）の中央列であって、ユーザーが中央列内でダブルタップすると、ブラウザは中央コンテンツ領域５４０上の表示をズームできる。しかし、プレビュー画像のみが表示されている場合、ブラウザ５０は、ズームすべき画像上の特定の領域を知らない可能性がある。ダブルタップによるズーム機能をコンテンツプレビューに提供するために、中間システム３０が、前述のように、軽量ＤＯＭを提供し得るか、または簡略化ＨＴＭＬページが提供され得る。ＤＯＭまたはＨＴＭＬページは、非プレビューバージョンの領域に対応するプレビュー画像の領域を定義し得、それにより、ブラウザ５０に、ダブルタップ入力または何らかの他のズームコマンドに応答してズームする方法を判断するための情報を提供する。例えば、ＨＴＭＬページは、３列を有する単純な＜ｔａｂｌｅ＞を定義するコードを含み得るか、またはＤＯＭはかかるテーブルの対応する表現を含み得る。
【００４９】
プレビュー認識ブラウザ５０は、中間システム３０が、特定のユーザーに対するプロセスをカスタマイズまたはパーソナライズするのを可能にする他の機能も含み得る。例えば、ブラウザ５０は、ユーザーがプレビューページ上でズームインおよびスクロールダウンする頻度に関する利用データを収集および報告し得る。中間システム３０は、このデータを、例えば、ユーザーの閲覧行動に最適な特定のスクリーンショットを選択するために使用し得る。プレビュー認識ブラウザ５０は、ユーザー装置の処理能力、画面サイズ、実行しているアプリケーション数などに関する情報などの、適切なスクリーンショットを選択するために有用であり得る他の情報も中間システム３０に報告し得る。さらに、プレビュー認識ブラウザは、プレビューとやりとりするための１つ以上の特別なタッチスクリーンジェスチャをサポートし得る。かかるジェスチャの一例を以下で説明する。
【００５０】
プレビュー認識ブラウザは、中間システム３０が、プレビューと異なるか、またはプレビューから省かれた実際のページの部分のみを配信する機能もサポートし得る。例えば、一旦、プレビューが配信されると、中間システム３０は、比較を実行することにより、ページの特定のセクションが変更されていることを判断し得、このセクションに対応するＨＴＭＬシーケンスをブラウザ５０に配信し得る。プレビュー認識ブラウザは次いで、プレビューのその部分のみを置き換え得、プレビューの他の部分を置き換えることはない。別の例として、プレビューは、ページ上の画像の画素データのバイト範囲または一部のみを含み得、その場合、中間システムがその後、省かれた画素データを配信して−プレビュー認識ブラウザが埋め−得る。
【００５１】
プレビュー認識ブラウザ５０は、プレビューをレンダリングするための特別な機能も含み得る。例えば、前述のように、中間システム３０は、（１）ページの画像コンテンツを表す画像ファイル、および（２）テキストコンテンツを非画像フォーマットで含む、ＨＴＭＬファイルなどの、非画像オーバーレイファイルの両方を配信するように構成され得る。かかる実施形態では、ブラウザ５０は、プレビューを生成するために、これらの２つのタイプのファイルを組み合わせるように構成され得る。
【００５２】
この方法が使用される場合、中間システム３０は、適用できる場合には、その後、図２のイベント５で取得されたページに基づく新しいオーバーレイファイルを（新しい画像ファイルを送信することなく）送信し得る。従って、例えば、ページが、プレビューには含まれていない、パーソナライズされたテキストコンテンツを含む場合、中間システムは単に、このパーソナライズされたコンテンツを含む新しいオーバーレイファイルを送信し得；プレビュー認識ブラウザは次いで、画像コンテンツを変更することなく、新しいオーバーレイファイルを使用してプレビューの表示を更新するであろう。
【００５３】
プレビューのみ閲覧モード
いくつかの実施形態では、システムは、中間システム３０が、デフォルトにより、ページプレビューのみを（利用可能な場合）配信して、実際のページを配信しない、「プレビューのみ」閲覧モードをサポートし得る。ユーザーは、ブラウザ設定によって、または構成サイトを通じて、このモードを有効または無効にすることが可能であり得る。プレビュー認識ブラウザ５０が使用される場合、ブラウザ５０は、ユーザーが、そのプレビューを見ている間に、実際のページを要求するのを可能にする特別なタッチスクリーンジェスチャをサポートし得る。例えば、ユーザーが画面の特定の領域上を２度タップすると、ブラウザは、実際のページの要求およびロードによって応答するであろう。
【００５４】
いくつかの実施形態では、中間システム３０またはブラウザ５０は、自動的に「プレビューのみ」閲覧モードに（例えば、「プレビューのみ」モードのユーザー開始なしで）入り得る。これは、様々なシステムまたはネットワーク条件に応答してトリガーされ得る。例えば、中間システム３０またはブラウザ５０が、中間システム３０とユーザー装置３２との間のネットワークリンクが低速であると判断する場合、「プレビューのみ」モードが自動的にトリガーされ得る。別の例として、「プレビューのみ」モードは、中間システム３０またはブラウザ５０が、特定のページまたは閲覧セッション全体の満足なレンダリングを可能にするために十分な利用可能資源がユーザー装置３２上にない可能性があることを検出する場合に、自動的にトリガーされ得る。
【００５５】
ページのプリフェッチおよびプレビュー生成のためのプロセス
図４は、プレビューを生成するために、中間システム３０によって、特にページプリフェッチャ４０およびプレビュー生成器４２（図１）によって、使用され得るプロセスの一実施形態を示す。このプロセスは、所与のページが比較的最新のプレビューを維持するために、定期的に（例えば、数分ごとに）繰り返され得る。この特定の実施形態では、プレビュー生成器４２は、各プリフェッチされたページに対して複数のプレビューを生成し、その各プレビューは、異なる装置タイプに対応する。プレビュー生成器４２は、非プレビュー認識ブラウザ５０と対比して、プレビュー認識に対して異なるプレビューも生成し得る。
【００５６】
ブロック６０で、ページプリフェッチャ４０が、コンテンツサイト３４からページをプリフェッチする。ブロック６２で、プレビュー生成器４２が、プレビューを生成すべき第１の装置タイプを選択する。異なるプレビューが、例えば、異なる画面サイズに対して、異なる装置接続速度に対して、異なるブラウザに対してなど、生成され得る。
【００５７】
図４のブロック６４で、プレビュー生成器４２が、スクリーンショットに変換するために、特定の部分または複数の部分を選択する。いくつかの実施形態では、プレビュー生成器４２は、ページ全体の単一のスクリーンショットを生成し得る。他の実施形態では、前述のように、ページの異なる部分の異なるスクリーンショットが生成され得る。いくつかの場合には、プレビュー生成器４２は、ページのある部分（例えば、レンダリングプロセスを遅くするような複雑なコーディングを含む部分）のみのスクリーンショットを生成し得、一方でページの他の部分は変更されないまま残す。プレビュー生成器４２は、従って、もしあれば、どの部分がスクリーンショットに変換されるべきかを判断するためにプリフェッチされたページのコーディングを分析し得る。
【００５８】
図４のブロック６６で、プレビュー生成器４２は、ページをレンダリングして、選択された部分（複数可）のスクリーンショット（複数可）を生成する。ブロック６８で、プレビュー生成器４２は、前述のように、ＨＴＭＬプレビューファイルなどの、１つ以上の追加のプレビューファイルを生成し得る。いくつかの実施形態では、ユーザーが実際のページまたはページの非プレビューバージョンから予期し得る機能をユーザーに提供するために、画像マップ、「オンマウスオーバー」イベントハンドラーおよび他のユーザーインタフェース機能がプレビュー内に含まれ得る。これらおよび他のユーザーインタフェース機能の包含は、プレビューが対象とする装置に基づき得る。例えば、コンテンツページが、補足的なコンテンツ（例えば、ユーザーがマウスを上に乗せた項目の説明）の表示を開始する「オンマウスオーバー」または「オンホバー」機能を含むとき、対象とする装置がかかる機能を起動することが可能である場合、かかる機能がプレビューに含まれ得る（例えば、マウスを備えたデスクトップコンピュータは「オンホバー」イベントを起動できるが、他方、タッチスクリーンのみを備えたタブレットコンピュータはそれを行うことができない可能性がある）。別の例として、実際のコンテンツページの構造に関する配置のヒントまたはデータが、プレビューと共に、またはプレビューと一緒に使用するために提供され得る。例えば、ズームするためのダブルタップなどの機能がプレビューで予想通りに機能するように、「ｄｉｖ」マークアップタグの配置が提供され得る。
【００５９】
ブロック７０で、任意のスクリーンショットを含む、プレビューファイルまたは複数のファイルが、選択された装置タイプに関連して（例えば、特定のスクリーンショットが適用される装置タイプまたは特性を示すデータと共に）、プレビューキャッシュ４４に格納される。ブロック７２で示すように、プロセスは次いで、１つ以上の追加の装置タイプに対して繰り返され得る。
【００６０】
ユーザー装置要求に応答するためのプロセス
図６は、コンテンツページに対するユーザー装置からの要求に応答するためのプロセス６００の実施形態を示す。中間システム３０は、要求されたコンテンツの非プレビューバージョンを中間システム３０が取得してユーザー装置３２に伝送する間に表示され得るプレビューを提供するためのプロセス６００を実行し得る。プロセス６００はブロック６０２で開始し得、そこで、中間システム３０はユーザー装置３２からコンテンツ要求を受信する。実例として、コンテンツ要求は、コンテンツサイト３４によってホストされるか、または提供されるコンテンツ項目に対する要求であり得る。
【００６１】
ブロック６０４で、中間システム３０は、もしあれば、どのプレビューがユーザー装置３２に送信されるべきかを識別し得る。前述のように、中間システム３０は、キャッシュ４４内に利用可能なコンテンツ項目の以前に生成されたプレビューを有し得る。また前述のように、異なるプレビューが異なる装置または装置構成に対して生成され得る。中間システム３０は、現在のユーザー装置３２に対して、プレビューの適切なバージョンを見つけ得る。例えば、中間システム３０は、要求しているユーザー装置３２の画面解像度、画面の向き（例えば、縦または横）、ブラウザ５０のレンダリング機能、および同様のものなどに関するデータを受信するか、またはアクセスし得る。キャッシュ４４内で適切なプレビューが入手できない場合、中間システム３０は、プロセス６００を終了し得、続けて、要求されたコンテンツの非プレビューバージョンを対応するコンテンツサイト３４から取得することにより、要求に対応し得る。
【００６２】
いくつかの実施形態では、コンテンツサイト３４または他のコンテンツプロバイダーは、特定のコンテンツページに対してプレビューが使用されないことを指定し得る。実例として、時間依存のコンテンツまたは迅速に変化するコンテンツ（例えば、株式市況ページ）、個人的なコンテンツ（例えば、銀行取引ページ）、またはユーザーが支払うと予期されるコンテンツに対しては、プレビューが使用されないことを指定するのが望ましいことがあり得る。いくつかの実施形態では、コンテンツサイト３４または他のコンテンツソースは、プレビューは、それが廃棄または置換される前に、特定の期間だけ使用されることを指定し得る。実例として、かかる特徴は、項目がどれだけ長くキャッシュされ得るかを識別するために使用されるのと同様の方法で実装され得る。
【００６３】
いくつかの実施形態では、コンテンツサイト３４または他のコンテンツソースは、中間システム３４によって生成されたプレビューではなく、特定のプレビューまたは介在ページもしくは画像が使用されることを指定し得る。実例として、コンテンツソースは、要求されたコンテンツが取得され、かつ／またはレンダリングされる間に、一時的な表示のためにユーザー装置３２に提供されるオブジェクト（例えば、プレビュー画像または介在ページ）の位置または他の識別情報を指定する、タグまたは他のデータを、コンテンツ項目内に挿入し得る。特定の地理的領域または同様のものを対象とするページなどの、カスタマイズされた介在ページまたは一時的ページを提供するために、クッキーまたは他のユーザー識別情報が、コンテンツソースとともに中間システム３０によって使用され得る。
【００６４】
ブロック６０６で、中間システム３０は、プレビューまたは他の一時的な項目をユーザー装置３２に送信できる。ブロック６０８で、中間システム３０は、要求されたコンテンツ項目の更新バージョンを対応するコンテンツサイト３４または他のコンテンツソースから取得できる。いくつかの場合には、ブロック６０８は、ブロック６０２での要求の受信から、要求されたコンテンツの更新バージョンが取得される時までの間に経過する総時間を低減するために、ブロック６０４および／またはブロック６０６と並行して実行され得る。
【００６５】
ブロック６１０で、中間システム３０は、任意選択で、コンテンツ項目の更新バージョンが、ユーザー装置３２に送信されたプレビューと異なるかどうか、および／またはどのくらい著しく異なるかを判断し得る。コンテンツの現在のバージョンが、ユーザー装置３２に既に送信されているプレビューと同一であるか、または実質的に同一である場合、中間システム３０は、非プレビューバージョンが送信されないと判断し得る。実例として、かかる判断は、コンテンツ項目が実質的に静的または非対話的で、非プレビューバージョンの提供がユーザーエクスペリエンスを向上しない場合、または送信されたプレビューがユーザーインタラクション機能（例えば、前述のように、画像マップ）を提供する場合に行われ得る。
【００６６】
いくつかの実施形態では、中間システム３０は、現在のバージョンの、プレビューバージョンと異なる部分のみを、ユーザー装置３２への伝送のために、選択または生成し得る。例えば、中間システム３０は、現在のバージョンのある画像が、プレビューバージョンの画像と異なると判断し得る。中間システム３０は、それらの画像を、ユーザー装置３２に送信される非プレビューバージョンに含めることができ、一方、変更されていない画像を除外する。いくつかの実施形態では、中間システム３０は、広告の更新された画像を送信するのを控えるように構成され得る。
【００６７】
別の例として、中間システム３０は、とりわけ、前述のように、テキストオーバーレイがユーザー装置３２に提供された場合に、プレビューバージョンのテキストを現在のバージョンのテキストと比較し得る。差がある場合、中間システム３０は、更新されたテキストオーバーレイを提供し得る。そうでないか、またはテキストオーバーレイがプレビューバージョンに提供されなかった場合、中間システム３０は、プレビューバージョンのどの部分を更新すべきかに関するデータ、現在のバージョンのＨＴＭＬファイルなどを提供し得る。
【００６８】
ブロック６１２で、中間システム３０は、更新バージョン、またはその部分を、要求しているユーザー装置３２に伝送する。
【００６９】
プレビューおよび非プレビューバージョンを表示するためのプロセス
図７は、コンテンツ項目を要求し、要求に応答して取得されるプレビューを表示するためのプロセス７００の実施形態を示す。以下に続く説明は、プレビュー認識ブラウザ５０によるプロセス７００の実行に焦点を合わせているが、いくつかの実施形態では、非プレビュー認識ブラウザ、ニュースアプリケーション（例えば、Ｆｌｉｐｂｏａｒｄ）などのモバイルアプリケーション、または同様のものなどの、他の構成要素がプロセス７００を実行し得る。
【００７０】
ブラウザ５０は、要求されたコンテンツのプレビューを表示し、次いで要求されたコンテンツの非プレビューバージョンを表示するためのプロセス７００を実行し得る。プロセス７００は、ブロック７０２で開始し得、そこで、ユーザー装置３２のブラウザ５０または何らかの他の構成要素が、コンテンツ項目に対する要求を中間システム３０に送信する。実例として、コンテンツ要求は、コンテンツサイト３４によってホストされるか、または提供されるコンテンツ項目に対する要求であり得る。いくつかの実施形態では、ブラウザ５０は、要求を中間システム３０に送信するのではなく、むしろ、それを、例えば、前述のプロセスを使用して、プレビューを提供する第三者システムに送信し得る。かかる場合には、ブラウザ５０は、プレビューバージョンに対する要求を第三者システムに送信し、その後、または並行して、コンテンツサイト３４からの非プレビューバージョンを要求し得る。
【００７１】
ブロック７０４で、ブラウザ５０が、要求されたコンテンツ項目のプレビューバージョンを中間システム３０から（または何らかの第三者システムから）取得し得る。前述のように、プレビューは、中間システム３０によって、コンテンツサイト３４によって、または何らかの他のエンティティによって生成されている可能性がある。
【００７２】
ブロック７０６で、ブラウザ５０は、プレビューを表示できる。ブロック７０８で、ブラウザ５０は、プレビューとのユーザーインタラクションを処理できる。実例として、かかるインタラクションは、ズームおよびスクロール動作、中間システム３０によりプレビューに追加して提供されたオブジェクト（例えば、テキストボックス）とのインタラクション、要求されたコンテンツ項目上のリンクに対応する画像マップ領域のアクティブ化、および同様のものを含み得る。
【００７３】
判断ブロック７１０で、ブラウザ５０は、要求されたコンテンツ項目の非プレビューバージョンが取得されていて、表示のために準備ができているかどうかを判断できる。そうである場合、プロセス７００はブロック７１８に進むことができる。そうでなければ、プロセス７００はブロック７０８に戻り得、そこで、ブラウザ５０は、ユーザーインタラクションを処理できる。
【００７４】
ブロック７０４〜７０８と並行して、またはそれらに続いて、ブラウザ５０は、ブロック７１２で、要求されたコンテンツの非プレビューバージョンを中間システム３０から取得し得る。いくつかの実施形態では、ブラウザ５０は、ユーザー装置３２の代わりに、非プレビューバージョンを取得するために、中間システム３０を頼りにするのではなく、非プレビューバージョンを、コンテンツサイト３４から、または何らかの他のソースから、直接取得するように構成され得る。
【００７５】
ブロック７１４で、ブラウザ５０は、ブロック７１２で取得した非プレビューバージョンをレンダリングできる。実例として、ブラウザ５０は、プレビューバージョンとは別個のフレームバッファ内で非プレビューバージョンをレンダリングでき、次いでブラウザ５０は、非プレビューバージョンが表示のために準備できている場合、ブロック７１８でフレームバッファをスワップできる。非プレビューバージョンがコンテンツ項目の一部のみを含む場合、ブラウザ５０は、非プレビュー部分を表示のためにプレビューバージョンに適用できる。
【００７６】
ブロック７１６で、ブラウザ５０は、ブロック７０８でプレビューバージョンに関して処理された、任意のユーザーインタラクションを、非プレビューバージョンに適用できる。ブラウザ５０は、ブロック７１８で、非プレビューバージョンの表示前に、それを行うことができる。このようにして、非プレビューバージョンがユーザーに表示される時、ユーザーエクスペリエンスは、コンテンツの表示における急な変化によって妨害または中断されない。例えば、ユーザーがプレビューをスクロールまたはズームしている場合、対応するスクロールおよび／またはズーム操作が、非プレビューバージョンの表示前に、非プレビューバージョンに関してシミュレートされ得る。
【００７７】
スクリーンショットのないページプレビュー
いくつかの実施形態では、中間システム３０は、任意のスクリーンショットを含むページプレビューを配信するように構成され得る。例えば、ページ要求をユーザー装置から受信すると、中間システム３０は、（１）ページのキャッシュされたバージョンをプレビューとして、任意選択で、迅速配信およびレンダリングをサポートするための修正を加えて、返し、（２）実際のページを取得し、次いで、（３）実際のページがプレビューと異なる（または、著しく異なる）場合、実際のページを（修正して、または修正なしで）ブラウザに配信し得る。実際のページが配信されると、ブラウザ５０は、前述のように、それをプレビューの代わりに表示するであろう。中間システム３０は、このアプローチを全てのページに対して使用するか、またはページコンテンツの分析に基づきそれを選択的に使用するように構成され得る。スクリーンショットが含まれていない場合には、プレビューを生成するタスクは、例えば、スクリプトを除外すること、広告を除外すること、および／または埋込み画像の解像度を低減することを含み得る。
【００７８】
いくつかの実施形態では、中間システム３０は、コンテンツのスクリーンショット画像ではなく、コンテンツのビデオ表示または何らかの他の動的ビューであるプレビューコンテンツを、中間システム３０によってレンダリングされるにつれて提供するように構成され得る。例えば、中間システム３０は、ユーザー装置３２と（例えば、リモート表示フィード（ｒｅｍｏｔｅ  ｄｉｓｐｌａｙ  ｆｅｅｄ）を伝送するためのリモートデスクトッププロトコルまたは何らかの他の方法もしくはプロトコルを使用して）リモートデスクトップセッションを確立し得る。コンテンツ項目が中間システム３０によってレンダリングされている間に、ユーザーにはコンテンツがユーザー装置３２でローカルにレンダリングされているように見えるように、ユーザー装置は、コンテンツのビデオフィードまたは他の動的ビューをそれがレンダリングされるにつれて受信し得る。ユーザー装置３２がコンテンツを受信すると、ローカルバージョンが、中間システム３０でコンテンツのビデオフィードを置き換え得る。
【００７９】
システム実施態様および変形形態
中間システム３０は、各々がプロセッサおよびメモリを含み得る、１つ以上の物理コンピューティング装置（物理サーバー、ストレージアレイ、ルーターなど）を含むコンピューティングシステムによって、またはコンピューティングシステム上で実装され得る。コンピューティングシステムは、いくつかの場合には、地理的に分散されているコンピューティング装置を含み得、その場合、開示されたサーバー側タスクの一部は、他からリモートで実行され得る。中間システム３０の様々な関数が、コンピューティングシステムによって実行されるコードモジュールで具現化され得る。コードモジュールは、任意のタイプまたは複数のタイプの持続性コンピュータ記憶装置または媒体（磁気ディスク、ソリッドステートメモリ、光ドライブなど）上に永続的に格納され得る。中間システム３０の開示されたプロセスの一部または全部が、代替として、カスタム設計されたＡＳＩＣまたはＦＰＧＡなどの、専用コンピュータハードウェアで部分的または全体的に具現化され得る。中間システム３０の様々な構成要素および関数は、専用サーバーではなく、１つ以上の仮想マシンまたはクラウドリソースでも実装できる。ブラウザ５０は、本明細書で説明するクライアント側関数を実装するためのコードを含む、任意のタイプの持続性記憶媒体上に格納された実行可能コードを含み得る。
【００８０】
いくつかの実施形態では、中間システム３０は省かれ得る。かかる実施形態では、ブラウザ５０は、（１）実際のページをそのオリジンサーバーから要求／取得すること、および（２）ページのプレビューを別個のプレビューサーバーまたはシステムから要求／取得すること、を同時に行うように設計または構成され得る。ページプレビューが最初に到着する場合、ブラウザは、実際のページをバックグラウンドでロードしている間に、それを表示し得、次いで、実際のページが完全にロードされると、プレビューの代わりに実際のページを表示し得る。かかる実施形態では、プレビューサーバーまたはシステムは、本明細書で説明するのと同じ方法を使用して、プレビューを生成および配信し得る。プレビューサーバーは、様々なネットワーク位置（例えば、存在点）および地理的位置に配置され得、その場合、それらは、ユーザーによって見られる通り、応答時間を最小限にしようとするアルゴリズムに従い、ユーザー装置またはページ要求に静的または動的に割り当てられ得る。
【００８１】
コンテンツ「ページ」のコンテキストで説明したが、本明細書で開示する方法は、他の文書およびコンテンツの単位にも適用可能である。例えば、開示する方法は、Ｗｏｒｄ文書、スプレッドシートファイル、ＰＤＦ文書、および様々な他のタイプの文書のプレビューを提供するために使用できる。
【００８２】
結論
前述は、以下の付記項を考慮すると、より良く理解され得る。
【００８３】
１．コンテンツプレビューを生成するためのコンピュータ実装方法であって、本コンピュータ実装方法は：１つ以上のコンピューティング装置を含むコンテンツプレビューシステムによって、コンテンツサイトからコンテンツページを取得することであって、コンテンツサイトがコンテンツプレビューシステムとは別個である、コンテンツサイトからコンテンツページを取得すること；ユーザー装置上に表示するためにプレビューコンテンツを生成することであって、プレビューコンテンツを生成することが、複数の画像の各画像がコンテンツページのそれぞれ異なる部分の表現を含む、複数の画像を少なくとも生成することを含む、プレビューコンテンツを生成すること；および続いて、ユーザー装置からのコンテンツページに対する要求に、複数の画像の１つ以上を配信することにより応答すること、を含む。
【００８４】
２．コンテンツサイトから、コンテンツページの実質的に現在のバージョンを取得すること；およびユーザー装置に対して、コンテンツページの非プレビュー表現を配信することであって、非プレビュー表現が実質的に現在のバージョンに少なくとも一部基づく、コンテンツページの非プレビュー表現を配信すること、をさらに含む、付記項１に記載のコンピュータ実装方法。
【００８５】
３．非プレビュー表現が、ユーザー装置からの第２の要求なしで、自動的に配信される、付記項２に記載のコンピュータ実装方法。
【００８６】
４．複数の画像の少なくとも１つおよび、非プレビュー表現の少なくとも一部をユーザー装置に並行して配信することをさらに含む、付記項２に記載のコンピュータ実装方法。
【００８７】
５．コンテンツページの複数のプレビューを生成することをさらに含み、複数のプレビューの各プレビューが、対象とするユーザー装置の１つ以上の特性に少なくとも一部基づく、付記項１に記載のコンピュータ実装方法。
【００８８】
６．プレビューコンテンツを生成することが、コンテンツページを複数の部分に細分することをさらに含み、複数の画像の各画像が、複数の部分のそれぞれ異なる部分の表現を含む、付記項１に記載のコンピュータ実装方法。
【００８９】
７．コンテンツページのどの部分がユーザー装置上に最初に表示されるか、対象とするユーザー装置の特性、または対象とするブラウザの特性、の少なくとも１つに少なくとも一部基づき、複数の画像を生成することをさらに含む、付記項１に記載のコンピュータ実装方法。
【００９０】
８．広告がコンテンツページの特定の位置に存在するかどうかに少なくとも一部基づき、複数の画像を生成することをさらに含む、付記項１に記載のコンピュータ実装方法。
【００９１】
９．コンテンツサイトからのデータに少なくとも一部基づき、複数の画像を生成することをさらに含む、付記項１に記載のコンピュータ実装方法。
【００９２】
１０．画像を含むコンテンツページの部分に対してのみ、複数の画像を生成することをさらに含む、付記項１に記載のコンピュータ実装方法。
【００９３】
１１．プレビューコンテンツが、コンテンツページのテキスト部分の非画像表現を含む、付記項１０に記載のコンピュータ実装方法。
【００９４】
１２．複数の画像の少なくとも１つの画像が、コンテンツページの非画像コンテンツの画像表現を含む、付記項１に記載のコンピュータ実装方法。
【００９５】
１３．プレビューコンテンツが、コンテンツページの配置に少なくとも一部基づき配置データをさらに含む、付記項１に記載のコンピュータ実装方法。
【００９６】
１４．コンテンツサイトからコンテンツページを取得すること、およびスケジュールに従ってプレビューコンテンツを生成することをさらに含む、付記項１に記載のコンピュータ実装方法。
【００９７】
１５．第２のユーザー装置からの要求に応答して取得したコンテンツに少なくとも一部基づき、プレビューコンテンツを生成することをさらに含む、付記項１に記載のコンピュータ実装方法。
【００９８】
１６．コンテンツページに対する要求に応答して中間システムから、一時的な表示のためのプレビューコンテンツを受信することであって、プレビューコンテンツが、コンテンツページの部分に対応する複数の画像を含む、一時的な表示のためのプレビューコンテンツを受信すること；複数の画像の１つ以上を表示させること；要求されたコンテンツページの少なくとも一部の非プレビュー表現を、第２の要求を送信することなく、受信すること；および非プレビュー表現を、複数の画像の１つ以上の代わりに、自動的表示させること、を行うように構成されたコンピュータ実行可能ブラウザモジュールを含む、持続性コンピュータ可読媒体。
【００９９】
１７．プレビューコンテンツが、要求されたコンテンツページのテキスト部分の非画像表現をさらに含む、付記項１６に記載の持続性コンピュータ可読媒体。
【０１００】
１８．非プレビュー表現が、要求されたコンテンツページのテキスト部分の非画像表現を含む、付記項１７に記載の持続性コンピュータ可読媒体。
【０１０１】
１９．実行可能ブラウザモジュールが、プレビューコンテンツとのユーザーインタラクションに応答して、複数の画像の追加の１つ以上を表示するようにさらに構成されている、付記項１６に記載の持続性コンピュータ可読媒体。
【０１０２】
２０．ブラウザモジュールが、非プレビュー表現を隠されたコンテンツペインにレンダリングするようにさらに構成されている、付記項１６に記載の持続性コンピュータ可読媒体。
【０１０３】
２１．非プレビュー表現を自動的に表示させることが、隠されたコンテンツペインを表示させることを含む、付記項１６に記載の持続性コンピュータ可読媒体。
【０１０４】
２２．非プレビューバージョンをレンダリングすることが、ユーザー入力データの少なくとも一部を、一時的な対話式コントロールから、非プレビューバージョンの対応するコントロールへコピーすることを含む、付記項１６に記載の持続性コンピュータ可読媒体。
【０１０５】
２３．ユーザー装置とコンテンツサイトとの間で仲介をするコンピュータシステムであって、本コンピュータシステムは、１つ以上のコンピューティング装置を含み、少なくとも：コンテンツサイトからコンテンツページを取得すること；ユーザー装置による一時的な表示ためにコンテンツページのプレビューを生成することであって、プレビューが：各画像がコンテンツページのそれぞれ異なる部分を表現する、複数の画像；ならびに複数の画像とは別個のマークアップコードファイルであって、複数の画像の第１の画像に対する要求を送信する第１の命令、およびコンテンツページに対するフォローアップ要求を送信する第２の命令を含むマークアップコードファイル、を含む、コンテンツページのプレビューを生成すること；ならびに複数のプレビュー画像をプレビューキャッシュに格納すること、を行うようにプログラミングされている。
【０１０６】
２４．複数のプレビュー画像をプレビューキャッシュ内に格納することに続いて、コンテンツページに対する要求を受信することであって、要求がユーザー装置から受信される、コンテンツページに対する要求を受信すること；および要求がフォローアップ要求でないと判断すると、マークアップコードファイルをユーザー装置に送信すること、を行うようにさらにプログラミングされている、付記項２３に記載のコンピュータシステム。
【０１０７】
２５．ユーザーコンピューティング装置から、コンテンツページに対する要求を受信すること；および要求がフォローアップ要求であると判断すると、コンテンツページの非プレビューバージョンを送信すること、を行うようにさらにプログラミングされている、付記項２３に記載のコンピュータシステム。
【０１０８】
２６．コンテンツページの複数のプレビューを生成するようにさらにプログラミングされており、複数のプレビューの各プレビューが、ユーザー装置の１つ以上の特性に少なくとも一部基づく、付記項２３に記載のコンピュータシステム。
【０１０９】
２７．コンテンツページのどの部分がユーザー装置上に最初に表示されるかの判断に少なくとも一部基づき、複数の画像を生成するようにさらにプログラミングされている、付記項２３に記載のコンピュータシステム。
【０１１０】
前述は、以下の付記項の観点からも、より良く理解され得る。
【０１１１】
１．ユーザー装置とコンテンツサイトとの間で仲介をするコンピュータシステムであって、本コンピュータシステムは、１つ以上のコンピューティング装置を含み、少なくとも：コンテンツサイトからコンテンツページを取得すること；コンテンツページのプレビューを生成することであって、コンテンツページのプレビューが：コンテンツページの少なくとも一部の画像；ならびに画像に対する要求を送信する第１の命令およびコンテンツページに対するフォローアップ要求を送信する第２の命令を含むマークアップコード、を含む、コンテンツページのプレビューを生成すること；コンテンツページに対するユーザー装置からの要求に応答して：要求がフォローアップ要求でないと判断すると、マークアップコードをユーザー装置に送信すること；ならびに要求がフォローアップ要求であると判断すると、コンテンツページの非プレビューバージョンをユーザー装置に送信すること、を行うようにプログラミングされている。
【０１１２】
２．コンテンツページのプレビューを、ユーザー装置のディスプレイ特性に少なくとも一部基づき生成するようにさらにプログラミングされている、付記項１に記載のコンピュータシステム。
【０１１３】
３．マークアップコードが画像マップを含む、付記項１に記載のコンピュータシステム。
【０１１４】
４．画像マップが画像のクリック可能領域を定義し、クリック可能領域がコンテンツページ上のリンクに対応する、付記項３に記載のコンピュータシステム。
【０１１５】
５．マークアップコードが、コンテナ要素に対するソースとしてコンテンツページを参照する、付記項１に記載のコンピュータシステム。
【０１１６】
６．フォローアップ要求が、コンテンツページに対するＵＲＬを含み、ＵＲＬは、ＵＲＬがフォローアップ要求と関連付けられていることを示すクエリー文字列を含む、付記項１に記載のコンピュータシステム。
【０１１７】
７．ユーザー装置とコンテンツサイトとの間で仲介をするコンピュータシステムであって、本コンピュータシステムは、１つ以上のコンピューティング装置を含み、また、コンテンツサイトのページを取得すること；取得したページのプレビューを生成して、そのプレビューをコンピュータシステムのキャッシュ内に格納すること；およびその後、ユーザー装置からのページに対する要求に、少なくとも：ページの非プレビュー表現がユーザー装置上でロードされている間にユーザーがページコンテンツを提示されるように、ページのプレビューを、ユーザー装置上に一時的に表示するためにユーザー装置に配信すること；およびページの非プレビュー表現を配信することであって、前記非プレビュー表現が、ページに対する要求に応答してコンピュータシステムによって取得されたページコンテンツに基づく、ページの非プレビュー表現を配信すること、により、応答すること；を含むプロセスを実行するようにプログラミングされている。
【０１１８】
８．プレビューが、ページの少なくとも１つの部分のスクリーンショットを含む、付記項７に記載のコンピュータシステム。
【０１１９】
９．プレビューが、複数の画像を含み、各画像が、ページの一部分の表現を含む、付記項７に記載のコンピュータシステム。
【０１２０】
１０．プレビューが、ページのテキスト部分の非画像表現を含む、付記項７に記載のコンピュータシステム。
【０１２１】
１１．プレビューが、画像マップを含む、付記項７に記載のコンピュータシステム。
【０１２２】
１２．プレビューが、ページに関する配置データを含む、付記項７に記載のコンピュータシステム。
【０１２３】
１３．非プレビュー表現が、コンテンツサーバーから取得されたページの現在のバージョンを含む、付記項７に記載のコンピュータシステム。
【０１２４】
１４．非プレビュー表現が、ページの少なくとも一部のキャッシュされたバージョンを含む、付記項７に記載のコンピュータシステム。
【０１２５】
１５．非プレビュー表現が、ページのプレビューと現在のバージョンとの間の差に少なくとも一部基づく、付記項７に記載のコンピュータシステム。
【０１２６】
１６．コンテンツサイトからページを取得すること、およびスケジュールに従ってページのプレビューを生成することを含むプロセスを実行するようにさらにプログラミングされている、付記項７に記載のコンピュータシステム。
【０１２７】
１７．対象とするユーザー装置の特性に少なくとも一部基づき、ページのプレビューを生成することを含む、プロセスを実行するようにさらにプログラミングされている、付記項７に記載のコンピュータシステム。
【０１２８】
１８．特性が、ディスプレイサイズまたはディスプレイ解像度の１つを含む、付記項１７に記載のコンピュータシステム。
【０１２９】
１９．第２のユーザー装置からの要求に応答して取得したコンテンツに少なくとも一部基づき、ページのプレビューを生成することを含む、プロセスを実行するようにさらにプログラミングされている、付記項７に記載のコンピュータシステム。
【０１３０】
２０．プレビューおよび非プレビュー表現をユーザー装置に並行して配信することを含む、プロセスを実行するようにさらにプログラミングされている、付記項７に記載のコンピュータシステム。
【０１３１】
２１．コンテンツページを要求するためのコンピュータ実装方法であって、本コンピュータ実装方法は：コンテンツページに対する要求に応答して中間システムから、要求されたコンテンツページのプレビューを受信することであって、プレビューが、要求されたコンテンツページの少なくとも一部の画像を含む、要求されたコンテンツページのプレビューを受信すること；プレビューを表示させること；プレビューを表示させることに続いて、要求されたコンテンツページを、中間システムから受信すること；および要求されたコンテンツページをプレビューの代わりに自動的に表示させること、を含む。
【０１３２】
２２．プレビューが複数の画像を含み、複数の画像の各画像が、要求されたコンテンツページの別個の部分に対応する、付記項２１に記載のコンピュータ実装方法。
【０１３３】
２３．プレビューが、画像を参照するマークアップコードを含む、付記項２１に記載のコンピュータ実装方法。
【０１３４】
２４．プレビューが、画像マップをさらに含む、付記項２３に記載のコンピュータ実装方法。
【０１３５】
２５．画像マップが画像のクリック可能領域を定義し、クリック可能領域が要求されたコンテンツページ上のリンクに対応する、付記項２４に記載のコンピュータ実装方法。
【０１３６】
２６．プレビューが、コンテナ要素に対するソースとして要求されたコンテンツページを参照する、マークアップコードを含む、付記項２１に記載のコンピュータ実装方法。
【０１３７】
２７．要求されたコンテンツページを表示させることが、コンテナ要素を表示させることを含む、付記項２６に記載のコンピュータ実装方法。
【０１３８】
２８．要求されたコンテンツページを隠されたコンテンツペインにレンダリングすることをさらに含む、付記項２１に記載のコンピュータ実装方法。
【０１３９】
２９．要求されたコンテンツページを表示させることが、隠されたコンテンツペインを表示させることを含む、付記項２８に記載のコンピュータ実装方法。
【０１４０】
前述は、以下の付記項の観点からも、より良く理解され得る。
【０１４１】
１．ユーザー装置とコンテンツサイトとの間で仲介をするコンピュータシステムであって、本コンピュータシステムは、１つ以上のコンピューティング装置を含み、少なくとも：コンテンツサイトによってホストされるコンテンツページに対する要求を、ユーザー装置から受信すること；コンテンツページの非プレビューバージョンがユーザー装置上でロードされている間にユーザーがページコンテンツを提示されるように、コンテンツページのプレビューバージョンを、ユーザー装置上に一時的に表示するためにユーザー装置に配信すること；コンテンツページの実質的に現在のバージョンをコンテンツサイトから取得すること；コンテンツページのプレビューバージョンと実質的に現在のバージョンとの間の差の分析に少なくとも一部基づき、コンテンツページのプレビューバージョンと実質的に現在のバージョンとの間の差の表現を生成すること；およびその差の表現をユーザー装置に配信すること、を行うようにプログラミングされている。
【０１４２】
２．差の表現が、１つ以上の画像を含み、各画像が、プレビューバージョンの対応する部分と異なる実質的に現在のバージョンの部分の表現を含む、付記項１に記載のコンピュータシステム。
【０１４３】
３．差の表現が、プレビューバージョンの対応する部分と異なるテキストコンテンツの部分を含む、付記項１に記載のコンピュータシステム。
【０１４４】
４．プレビューバージョンが、コンテンツページの少なくとも一部のスクリーンショット画像を含む、付記項１に記載のコンピュータシステム。
【０１４５】
５．コンテンツ要求に応答するためのコンピュータ実装方法であって、本コンピュータ実装方法は：１つ以上のコンピューティング装置を含むコンテンツプレビューシステムによって、コンテンツプレビューシステムとは異なるコンテンツサイトによってホストされるコンテンツページに対する要求を受信することであって、要求がユーザー装置から受信される、コンテンツページに対する要求を受信すること；要求に応答して：コンテンツページのプレビューバージョンをユーザー装置に配信すること；コンテンツページのプレビューバージョンと実質的に現在のバージョンとの間の差の分析に少なくとも一部基づき、プレビュー更新を生成すること；およびそのプレビュー更新をユーザー装置に配信すること、を含む。
【０１４６】
６．ユーザー装置と関連付けられた構成設定に少なくとも一部基づき、プレビュー更新を生成することを判断することをさらに含む、付記項５に記載のコンピュータ実装方法。
【０１４７】
７．ユーザー装置がプレビューコンテンツのみを要求するのを可能にすることをさらに含む、付記項５に記載のコンピュータ実装方法。
【０１４８】
８．コンテンツページの実質的に現在のバージョンを、コンテンツサイトまたはコンテンツキャッシュのうちの１つから取得することをさらに含む、付記項５に記載のコンピュータ実装方法。
【０１４９】
９．プレビューバージョンをコンテンツキャッシュから取得することをさらに含む、付記項５に記載のコンピュータ実装方法。
【０１５０】
１０．要求をユーザー装置から受信する前に、プレビューバージョンを生成することをさらに含む、付記項５に記載のコンピュータ実装方法。
【０１５１】
１１．プレビューバージョンが、１つ以上のプレビュー画像を含み、各プレビュー画像がコンテンツページの少なくとも一部の表現を含む、付記項５に記載のコンピュータ実装方法。
【０１５２】
１２．プレビュー更新が、置換画像を含み、置換画像が、プレビュー画像によって表される部分の位置に対応する、実質的に現在のコンテンツページの一部の表現を含む、付記項１１に記載のコンピュータ実装方法。
【０１５３】
１３．プレビュー更新を生成することが、特定の位置に対応するプレビュー画像が、ユーザー装置の特性に基づいて生成されたかどうかに少なくとも一部基づき、コンテンツページの特定の部分の置換画像を含むかどうかを判断することを含む、付記項１１に記載のコンピュータ実装方法。
【０１５４】
１４．プレビュー更新を生成することが、特定の位置が広告と関連付けられているかどうかに少なくとも一部基づき、コンテンツページの特定の位置の置換画像を含むかどうかを判断することを含む、付記項１１に記載のコンピュータ実装方法。
【０１５５】
１５．プレビューバージョンが、コンテンツページの第１のテキスト部分に対応するプレビューテキストコンテンツを含む、付記項５に記載のコンピュータ実装方法。
【０１５６】
１６．プレビュー更新が、置換テキストコンテンツを含み、置換テキストコンテンツがコンテンツページの第１のテキスト部分に対応する、付記項１５に記載のコンピュータ実装方法。
【０１５７】
１７．プレビュー更新が、ユーザー装置からのフォローアップ要求を受信することなく、配信される、付記項５に記載のコンピュータ実装方法。
【０１５８】
１８．プレビューバージョンの少なくとも一部およびプレビュー更新の少なくとも一部を並行して配信することをさらに含む、付記項５に記載のコンピュータ実装方法。
【０１５９】
１９．プレビュー更新をユーザー装置に提供するかどうかを判断することをさらに含む、付記項５に記載のコンピュータ実装方法。
【０１６０】
２０．プレビュー更新を提供するかどうかを判断することが：ユーザー装置に対するネットワーク接続の特性、ユーザー装置と関連付けられた利用可能なコンピューティング資源、またはユーザー装置と関連付けられたユーザー選択可能な構成選択肢の１つに少なくとも一部基づく、付記項１９に記載のコンピュータ実装方法。
【０１６１】
２１．少なくとも：コンテンツページに対する要求に応答して中間システムから、コンテンツページのプレビュー表現を受信すること；プレビュー表現を表示させること；第２の要求を送信することなくプレビュー更新を受信することであって、プレビュー更新がプレビュー表現の第１の部分に対応する更新された部分を含む、プレビュー更新を受信すること；およびプレビュー表現の少なくとも一部が表示されたまま、プレビュー更新を自動的に表示させること、を行うように構成されたコンピュータ実行可能ブラウザモジュールを含む、持続性コンピュータ可読媒体。
【０１６２】
２２．ブラウザモジュールが、プレビュー更新を受信するかどうかに関してユーザー選択可能構成選択肢を提供するようにさらに構成されている、付記項２１に記載の持続性コンピュータ可読媒体。
【０１６３】
２３．プレビュー更新を自動的に表示させることが、プレビュー表現の第１の部分の表示を、プレビュー更新の対応する更新部分と置き換えることを含む、付記項２１に記載の持続性コンピュータ可読媒体。
【０１６４】
２４．プレビュー更新が、コンテンツページのプレビュー表現と実質的に現在のバージョンとの間の差の比較に少なくとも一部基づく、付記項２１に記載の持続性コンピュータ可読媒体。
【０１６５】
２５．プレビュー表現が、ブラウザモジュールの特性に対して生成された第２の部分を含み、第２の部分が、プレビュー更新を自動的に表示させた後に表示されたままである、付記項２１に記載の持続性コンピュータ可読媒体。
【０１６６】
２６．プレビュー表現の第１の部分が、中間システムでレンダリングされたコンテンツの画像、テキスト、または動的ビューの１つを含む、付記項２１に記載の持続性コンピュータ可読媒体。
【０１６７】
前述は、以下の付記項の観点からも、より良く理解され得る。
【０１６８】
１．１つ以上のコンピューティング装置を含むコンピュータシステムであって、少なくとも：ユーザー装置から、１つ以上のコンピューティング装置とは別個の、コンテンツソースによってホストされるコンテンツ項目に対する要求を受信すること；ユーザー装置に送信すべきコンテンツ項目のプレビューバージョンを識別すること；ユーザー装置に対して、識別されたプレビューバージョンを送信すること；コンテンツソースから、コンテンツ項目の実質的に現在のバージョンを取得すること；および、ユーザー装置に対して、コンテンツ項目の非プレビューバージョンを送信することであって、非プレビューバージョンが実質的に現在のバージョンに少なくとも一部基づき、非プレビューバージョンが、非プレビューバージョンに対するユーザー装置からの後続の要求を受信することなく、送信される、コンテンツ項目の非プレビューバージョンを送信すること、を行うように構成された１つ以上のコンピューティング装置を含むコンピュータシステム。
【０１６９】
２．コンテンツ項目の実質的に現在のバージョンが、要求しているユーザー装置に提供されるプレビューコンテンツを参照し、識別されたプレビューバージョンが参照されたプレビューコンテンツを含む、付記項１に記載のコンピュータシステム。
【０１７０】
３．１つ以上のコンピューティング装置が：コンテンツ項目をプリフェッチすること；ならびにコンテンツ項目の少なくとも一部の画像を含む、コンテンツ項目の第１のプレビューバージョンを生成および格納すること、を行うようにさらに構成されており；識別されたプレビューバージョンが第１のプレビューバージョンを含む、付記項１に記載のコンピュータシステム。
【０１７１】
４．１つ以上のコンピューティング装置が、ユーザー装置と関連付けられた特性に少なくとも一部基づき画像を生成するようにさらに構成されている、付記項３に記載のコンピュータシステム。
【０１７２】
５．非プレビューバージョンの伝送が、識別されたプレビューバージョンの少なくとも一部の伝送と重なり合う、付記項１に記載のコンピュータシステム。
【０１７３】
６．コンテンツ要求に応答するためのコンピュータ実装方法であって、本コンピュータ実装方法は：１つ以上のコンピューティング装置を含むコンテンツプレビューシステムにより、コンテンツプレビューシステムとは別個のコンテンツソースによってホストされるコンテンツページに対する要求を受信することであって、要求がユーザー装置から受信される、コンテンツページに対する要求を受信すること；ユーザー装置に対して、プレビューコンテンツを一時的な表示のために送信することであって、プレビューコンテンツがコンテンツページと関連付けられ、プレビューコンテンツが、コンテンツページと関連付けられたロード特性を改善するように修正される、プレビューコンテンツを一時的な表示のために送信すること；コンテンツソースから、コンテンツページの実質的に現在のバージョンを取得すること；およびユーザー装置に対して、実質的に現在のバージョンに少なくとも一部基づく、コンテンツページの非プレビューバージョンを送信すること、を含む。
【０１７４】
７．ロード特性が：待ち時間、帯域幅利用、サイズ、レンダリング時間、またはユーザー認識ロード時間の少なくとも１つを含む、付記項６に記載のコンピュータ実装方法。
【０１７５】
８．コンテンツソースからのデータに少なくとも一部基づくプレビューコンテンツを、コンテンツプレビューシステムによって識別することをさらに含む、付記項６に記載のコンピュータ実装方法。
【０１７６】
９．コンテンツページの実質的に現在のバージョンが、要求しているユーザー装置に提供されるプレビューコンテンツを参照する、付記項８に記載のコンピュータ実装方法。
【０１７７】
１０．参照されるプレビューコンテンツが：コンテンツソースによってホストされるプレビュー画像、またはコンテンツソースによってホストされる介在ページの１つを含む、付記項９に記載のコンピュータ実装方法。
【０１７８】
１１．コンテンツページと関連付けられた複数のプレビューコンテンツ項目からプレビューコンテンツを、コンテンツプレビューシステムによって選択することをさらに含み、選択することが、ユーザー装置の特性に少なくとも一部基づく、付記項６に記載のコンピュータ実装方法。
【０１７９】
１２．コンテンツページをコンテンツソースからプリフェッチすること；ならびにコンテンツページの少なくとも一部の画像を含む、第１のプレビューコンテンツ項目を生成および格納すること、をさらに含む、付記項６に記載のコンピュータ実装方法。
【０１８０】
１３．ユーザー装置と関連付けられた特性に少なくとも一部基づき画像を生成することをさらに含む、付記項１２に記載のコンピュータ実装方法。
【０１８１】
１４．第１のプレビューコンテンツ項目が、コンテンツページの対話式コントロールに対応する一時的な対話式コントロールに関するデータをさらに含む、付記項１２に記載のコンピュータ実装方法。
【０１８２】
１５．第１のプレビューコンテンツ項目が、コンテンツページの配置に少なくとも一部基づくプレビュー配置データをさらに含む、付記項１２に記載のコンピュータ実装方法。
【０１８３】
１６．ユーザー装置からの要求に応答して、プレビューコンテンツを生成することをさらに含む、付記項６に記載のコンピュータ実装方法。
【０１８４】
１７．プレビューコンテンツが、コンテンツプレビューシステムによってレンダリングされているコンテンツページのバージョンの動的表示を含む、付記項６に記載のコンピュータ実装方法。
【０１８５】
１８．コンテンツページのプレビューコンテンツと実質的に現在のバージョンとの間の差を識別すること；コンテンツページの非プレビューバージョンを生成することであって、非プレビューバージョンの少なくとも一部が差に基づく、コンテンツページの非プレビューバージョンを生成すること、をさらに含む、付記項６に記載のコンピュータ実装方法。
【０１８６】
１９．コンテンツページに対する第１の要求に応答して中間システムから、一時的な表示のためのプレビューコンテンツを受信すること；プレビューコンテンツを表示させること；要求されたコンテンツページの非プレビューバージョンの少なくとも一部を、第２の要求を送信することなく、受信すること；および非プレビューバージョンを、プレビューコンテンツの代わりに、自動的表示させること、を行うように構成されたコンピュータ実行可能ブラウザモジュールを含む、持続性コンピュータ可読媒体。
【０１８７】
２０．プレビューコンテンツが要求コンテンツページの画像を含む、付記項１９に記載の持続性コンピュータ可読媒体。
【０１８８】
２１．プレビューコンテンツが複数の画像を含み、複数の画像の各画像が、要求されたコンテンツページの別個の部分に対応する、付記項１９に記載の持続性コンピュータ可読媒体。
【０１８９】
２２．ブラウザモジュールが、非プレビューバージョンを隠された表示ペインにレンダリングするようにさらに構成されている、付記項１９に記載の持続性コンピュータ可読媒体。
【０１９０】
２３．非プレビューバージョンを自動的表示させることが、プレビューコンテンツを表示している表示ペインを隠された表示ペインと置き換えることを含む、付記項１９に記載の持続性コンピュータ可読媒体。
【０１９１】
２４．非プレビューバージョンをレンダリングすることが、１つ以上のユーザーインタラクションを非プレビュー項目に適用することを含む、付記項１９に記載の持続性コンピュータ可読媒体。
【０１９２】
２５．プレビューコンテンツが一時的な対話式コントロールに関するデータを含む、付記項１９に記載の持続性コンピュータ可読媒体。
【０１９３】
２６．非プレビューバージョンをレンダリングすることが、ユーザー入力データの少なくとも一部を、一時的な対話式コントロールから非プレビューバージョンの対応するコントロールへコピーすることを含む、付記項２５に記載の持続性コンピュータ可読媒体。
【０１９４】
２７．プレビューコンテンツが、要求されたコンテンツページと関連付けられた配置データを含む、付記項１９に記載の持続性コンピュータ可読媒体。
【０１９５】
２８．ブラウザモジュールが、１つ以上のユーザーインタラクションを、配置データに少なくとも一部基づき処理するようにさらに構成されている、付記項２７に記載の持続性コンピュータ可読媒体。
【０１９６】
実施形態に応じて、本明細書で説明するプロセスまたはアルゴリズムのいずれのある動作、イベント、または関数も、異なる順序で実行でき、追加、統合、または完全に除外することができる（例えば、説明した動作またはイベントの全てが必ずしもアルゴリズムの実施には必要ない）。その上、ある実施形態では、動作またはイベントは、連続してではなく、例えば、マルチスレッド処理、割込み処理、またはマルチプロセッサもしくはプロセッサコアを通して、または他の並列アーキテクチャ上で、同時に実行できる。
【０１９７】
本明細書で開示する実施形態に関連して説明した、様々な例示的な論理ブロック、モジュール、ルーチンおよびアルゴリズムのステップは、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとして実装できる。ハードウェアおよびソフトウェアのこの互換性を明瞭に示すために、様々な例示的な構成要素、ブロック、モジュールおよびステップが、概ね、それらの機能性の観点から上で説明されている。かかる機能がハードウェアまたはソフトウェアとして実装されるかどうかは、特定の用途およびシステム全体に課される設計制約によって決まる。説明する機能は、各特定の用途に対して様々な方法で実装できるが、かかる実装判断は、本開示の範囲からの逸脱を引き起こすとして解釈されるべきではない。
【０１９８】
本明細書で開示する実施形態に関連して説明した方法、プロセス、ルーチン、またはアルゴリズムのステップは、直接ハードウェアで、プロセッサによって実行されるソフトウェアモジュールで、または２つの組合せで具現化できる。ソフトウェアモジュールは、ＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハードディスク、取外し可能ディスク、ＣＤ−ＲＯＭ、または任意の他の形式の持続性コンピュータ可読記憶媒体に常駐できる。例示的な記憶媒体は、プロセッサが、記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるように、プロセッサに結合できる。代替では、記憶媒体は、プロセッサと統合できる。プロセッサおよび記憶媒体は、ＡＳＩＣ内に常駐できる。ＡＳＩＣはユーザー端末内に常駐できる。代替では、プロセッサおよび記憶媒体は、ユーザー端末内の別個の構成要素として常駐できる。
【０１９９】
本明細書では、とりわけ「できる（ｃａｎ）」、「でき得る（ｃｏｕｌｄ）」、「かもしれない（ｍｉｇｈｔ）」、「し得る（ｍａｙ）」、「例えば（ｅ．ｇ．）」および同様のものなどの条件語句は、別段の指示がないか、または使用されるコンテキスト内で別なふうに理解されない限り、一般に、ある実施形態は、他の実施形態が含まない一方で、ある特徴、要素および／またはステップを含むことを伝えることを意図する。従って、かかる条件語句は、一般に、特徴、要素および／またはステップが、１つ以上の実施形態に対して多少なりとも必要であることも、１つ以上の実施形態が、著者入力もしくはプロンプティングの有無にかかわらず、これらの特徴、要素および／もしくはステップが含まれているか、または任意の特定の実施形態で実行されるかどうかを判断するための論理を必ず含むことも意味することを意図しない。用語「含む（ｃｏｍｐｒｉｓｉｎｇ）」、「含む（ｉｎｃｌｕｄｉｎｇ）」、「有する（ｈａｖｉｎｇ）」、および同様のものは、同義語であり、制約のない方法で、包括的に使用され、追加の要素、特徴、動作、操作などを除外しない。また、用語「または（ｏｒ）」は、例えば、要素のリストを接続するために、使用される場合に、用語「または」が、そのリスト内の１つ、一部、または全部の要素を意味するように、その包括的意味で（その排他的な意味ではなく）使用される。
【０２００】
句「Ｘ、ＹおよびＺの少なくとも１つ」などの接続語句は、特に指定のない限り、一般に、項目、用語などがＸ、ＹもしくはＺ、またはそれらの組合せのいずれかであり得ることを伝えるために使用されるようなコンテキストで理解されるべきである。従って、かかる接続語句は、一般に、ある実施形態は、Ｘの少なくとも１つ、Ｙの少なくとも１つおよびＺの少なくとも１つがそれぞれ存在することを必要とすることを意味することを意図しない。
【０２０１】
前述の詳細な説明は、新しい特徴が様々な実施形態に適用されるとして示し、説明し指摘しているが、例示した装置またはアルゴリズムの形式および詳細における、様々な省略、置換および変更が、本開示の精神から逸脱することなく、行われ得ることが理解できる。認識され得るように、いくつかの特徴は他とは別々に使用できるか、または実施できるので、本明細書で説明する本発明のある実施形態は、本明細書で明記する特徴および利益の全ては提供しない形で具現化できる。本明細書で開示するある発明の範囲は、前述の説明によってではなく、添付の請求項によって示される。請求項の均等の意味および範囲内に入る全ての変更は、それらの範囲内に包含される。
【図１】
0006351611.tif 000003
【図２】
0006351611.tif 000004
【図３】
0006351611.tif 000005
【図４】
0006351611.tif 000006
【図５】
0006351611.tif 000007
【図６】
0006351611.tif 000008
【図７】
0006351611.tif 000009