5

クライアント側の JavaScript を作成する人なら誰でも DOM に精通しています。これは、ブラウザがサーバーから取得した HTML から生成されたメモリ内で参照するツリー構造です。JavaScript は、DOM ツリーのノードを追加、削除、および変更して、ページに変更を加えることができます。(ブラウザーのバグは別として) 操作するのは非常に素晴らしく、サーバー側のコードが最初にページを生成する方法とは大きく異なります。

私の質問は次のとおりです。どのサーバー側フレームワーク/言語が、最初からDOMツリーとして処理してページを構築しますか?文字列をエコーする代わりにノードを挿入しますか? クライアント側とサーバー側の両方のコードがページを同じように見れば、非常に役立つと思います。このようなものをどの Web サーバー言語でも一緒にハックすることは確かにできますが、この方法でページを作成する専用のフレームワークを使用すると、非常に優れた最適化を行うことができます。

オープンソースが広く展開されており、しばらく使用されていることはすべてプラスになります。

4

4 に答える 4

2

Rhino on Railsについて説明していますが、これはリリースされていませんが、間もなくリリースされます。同様に、Aptana Jaxerですが、RnRには実際のフレームワーク(Rails)が含まれますが、Jaxerは単なるサーバーテクノロジーです。

于 2008-08-18T17:04:54.377 に答える
2

AptanaのJaxerAJAXサーバーは、JSサーバー側も使用しているため、チェックアウトするのに役立つかもしれません。

そうは言っても、印刷ステートメントやエコーを使用してマークアップを生成するのではなく、動的コンテンツをテンプレート化してフックする方がよいと私は主張します。

于 2008-08-18T17:07:12.720 に答える
0

Jaxer はサーバー側の JavaScript + DOM です。出力を後処理することにより、jaxer を他の言語と統合できます。

また、Java、php などでは、xpath を使用して DOM を操作できます。

于 2009-06-10T01:46:17.020 に答える
-1

私はあなたがどこから来ているのかわかりますが、それはすべて少し議論の余地がありますね。レンダリングされたコンテンツ以外はブラウザに送信できず、すべてを一度に実行する必要があります(AJAXは別として)。ツリーのように構築したとしても、クライアントに卸売りで送信されるページを構築しているだけなので、(私が見ることができるものから)提案していることには価値がありません。

于 2008-08-18T17:01:31.967 に答える