0

topic+entry プロジェクトのページネーションを PHP と jQuery で作成しました

トピックに 5 つのページがあるとします。ユーザーが10番目の投稿で「@5」と書き、別のユーザーが@5をクリックすると、5番目のコメントまでページスライドが表示されるシステムを作成しました。しかし、ユーザーが 20 番目の投稿で「@5」と書いた場合の参照方法がわかりません。5番目の投稿が1ページ目にあり、ページあたりのページ数制限が15で、5ページあるため、ページがそのdivを見つけられない場合があります。

私はどうしたらいいですか?たぶん、5番目の投稿が最初のページにあると計算し、jQueryでチェーンイベントを作成できます。最初のページに移動し、5番目の投稿にスライドするなど、それはわかりません。

4

1 に答える 1

1

回答をリンクするためにstackoverflowが使用するのと同じ方法を使用できます。URLにページのIDと特定の回答(またはあなたの場合はコメント)のIDを指定します。そして、あなたのphpスクリプトは、この形式のURLを見ると、htmlアンカーを使用してURLを作成します。

例: http://yoursite/question_id/comment_idは site/question_id#comment_id にリダイレクトされます

このリンクをクリックして、まさにこの回答でテストできます: https://stackoverflow.com/a/10027770/311744。この URL は、サーバーがこの回答へのアンカー (#10027770) を使用して正しいページ (この場合は現在のページ) にリダイレクトするのに十分な情報を提供します。

次に、コメントが現在のページにあるという特別なケースを手動で処理し、同じページの javascript によるリロードを防ぐことができます (しかし、私は気にしませんし、SO もそうしません)。


編集:私が理解しているのは、ユーザーコメントに書かれた「@5」をクリックできるようにしたいということで、このコメントは何らかの形で表示されるはずです。この時点で、次の 2 つの解決策があります。

  • コメントを見つけることができるページにリダイレクトします (このコメントが別のページにある場合は、そのページを読み込む必要があります。これは前に説明したことです。
  • YouTube がコメントへの返信を読み込むときと同じように、参照があるコメントの下にコメントを読み込むことができます。(この youtube ページには、テストできる返信付きのトップ コメントがいくつかあります)
于 2012-04-05T11:31:44.160 に答える