web-dev-qa-db-ja.com

AJAX /非同期UIを使用しているときにファセット検索結果にリンクする方法は?

AJAX=を使用する従来のファセット検索がある場合、システムの現在の状態に関する即時フィードバックがあるため、ユーザーエクスペリエンスは一般的に良好です。ユーザーは、他のファセットがさらに利用できることを知っています。検索を絞り込み、結果が返されないファセットの組み合わせを選択することはできません。

問題は、検索基準のコレクションをユーザーが保存/共有できるようにする方法です。

選択ごとにページ全体のポストバックを使用する場合、検索条件を表すクエリ文字列変数を追加できますが、非同期の場合はそうではありません。

オプションA:UIに「永続リンク」要素を含めます

mockup

download bmml sourceBalsamiq Mockups で作成されたワイヤーフレーム

オプションB:「これを共有する」要素を含める

mockup

bmmlソースをダウンロード

他のオプションはありますか?あなたもこれをしようとするべきですか?

9
Charles Wesley

あなたはお互いを排除しない2つの良いオプションを持っています-それで私はなぜ両方を持つことができるときに選択するのでしょうか?一部のユーザーは「FBで共有」を信頼せず、代わりにURLを共有したいので、どちらも同等に有効だと思います。したがって、「共有」オプションと「URLをコピー」オプションの両方がある場合、より多くのユーザーが、Webの使用方法をサポートする実装を見つけます。つまり、David BeckhamNewsファセット)の両方のURLがGoogle:

https://www.google.com/webhp?hl=ja&tab=mw#q=David+Beckham&hl=en&tbo=d&source=lnms&tbm=nws&sa=X&ei=T8kKUez6I6SE4ASj6YCADw&sqi=2&ved=0CAoQ_AUoAA&bav=on r_gc.r_pw.r_cp.r_qf。&fp = a266652cdd4d0cbf&biw = 1366&bih = 64

enter image description here

...共有ボタン。検索結果ページ(SERP)をGoogleよりも優れたものにします。どのようにそのことについて?! ;-)

2
Benny Skogberg

検索状態と共有を慎重に検討していただきありがとうございます。

寄稿すべき修正点があります。クエリ文字列は、図の非同期の検索条件を反映できないと述べました。

選択ごとにページ全体のポストバックを使用する場合、検索条件を表すクエリ文字列変数を追加できますが、非同期の場合はそうではありません。

朗報です。完全に非同期で実行し、ファセット検索の状態をリアルタイムで反映するようにURLを更新することは実際には難しくありません。メソッドは比較的最近ですが、広くサポートされている標準に基づいて構築されており、さまざまなクライアント側フレームワークのおかげで実装が簡単です。

素敵な例として、 Vimeoでの高度な検索 を試してください。ファセットを操作すると、非同期に更新されている結果と、アドレスバーのクエリ文字列が表示されます。

これはモバイルユーザーにとっても大きなメリットです。「共有」機能がブラウザとプラットフォームレベルでますます統合されるようになるのを見るからです。

1
Noah C