0

中央の列(Ajaxによって入力)のコンテンツに対して、左の列の適切な高さとフッターの位置を設定するのに問題があります。

私のコード純粋にクライアント側のレイアウトで機能していますが、Ajax(サーバー側およびすべて)によって高さに加えられた変更を検出していません。では、Ajaxによって行われた変更を含め、ページの高さをどのように取得できますか?

PHPファイルからAjaxの高さを決定するJavaScript変数を設定する必要があるかもしれないと思っています...またはAjaxイベントがトリガーされたかどうかを判断するのに役立つかもしれません...

何かアイデア、一般的な解決策はありますか?

4

3 に答える 3

2

AJAX コードが実行された後に実行される JavaScript コードをページに追加して、高さを決定します。全体を通して自由にjqueryを使用してください。

于 2012-04-13T03:54:50.083 に答える
0

Ajaxはサーバー側ではありません。これは、JavaScriptから開始されたHTTPリクエストであり、サーバーが送り返すものに応答するJSイベントハンドラーです。ajaxリクエストが開始された後に高さチェックコードを起動できますが、JSがすぐに起動し、サーバーへのラウンドトリップに少なくとも数分の1秒かかるため、何の役にも立ちません。成功したajaxリクエストを処理する関数がどこにあるのか、そしてその関数のどこにHTMLが挿入されているのかを把握し、高さチェック/設定コードをフォローアップするために何が起こっているのかを十分に理解する必要があります。

于 2012-04-13T04:38:57.153 に答える
0

これを行うのに JavaScript は必要ありません。css トリックを使用して簡単に行うことができます。ここにリンクがあります: http://css-tricks.com/snippets/css/sticky-footer/ ただし、そのためにJSが本当に必要な場合は、使用してください

document.getElementById("footer").style.top = window.outerHeight + "px";

http リクエストからコンテンツをロードした直後。たとえば、css アプローチをお勧めします。

于 2012-04-13T07:13:54.553 に答える