0

ページが場所を変更してHTML要素を保持する方法はありますか。そのように再レンダリングされdivませんが、その状態を維持します。

Facebookチャットでそのような例を見つけることができます。チャットウィンドウがその場所を変更したりInnerHtml、別のページに移動したりしても変更されないことがわかります。

PS:どこから始めればいいのかわからないので、ドキュメントをいただければ幸いです。解決策がHTML5ではなくXHTMLであるとよいでしょう。

4

2 に答える 2

-1

Facebookチャットがどのように機能するかは正確にはわかりませんが、すべてのチャットメッセージがデータベースに保存されているので、後でメッセージを介してそれらにアクセスできます。

私の仮定は、FacebookのUIに、開いているチャット、またはデータベースに保存されているチャットを知らせるSession変数が設定されていることです。いずれの場合も、これを行うには外部スクリプトを使用する必要があります。簡単にするために、PHPを使用し、データをSESSION変数に格納するとします。

/* Storing the variable */
$users = array('user123', 'user456', 'user789');
$_SESSION['chat_windows_open'] = $users;
/* Retrieving the values */
foreach($_SESSION['chat_windows_open'] as $chat) {
/* Use $chat to get the username, query the DB for 
the message content, and echo it in whatever form you
wish. */
}
于 2012-04-18T07:35:47.277 に答える
-1

変更されるとwindow.location、ページは自動的に完全に再レンダリングされます。したがって、この観点から、答えはノーです。ただし、この効果はを使用して取得できますAJAX。ページがリロードされたり場所が変更されたりしない間に、ajaxを使用してサーバーにリクエストを送信します(window.location常に同じです)。ここから始めるのに良いリンクがありAJAXます:

http://www.w3schools.com/ajax/default.asp

それでもページの場所を変更したい場合は、ajaxリクエストを行い、ページのコンテンツを更新した後、javascriptのhistory.pushState関数を使用できます。ただし、クロスブラウザにする方法を見つける必要があります(別名、IEで機能させる)。

于 2012-04-18T07:33:16.280 に答える