1

RailsでRJSとPrototype/jQueryの全世界を調べ始めており、少し混乱しています。どちらを使用するかについて明確な線はないようです。

ここSOにあるような「アクティブ、ホット、ウィーク」タブの1つが欲しかったとしましょう。それらの1つを押すとき、私はCSSクラス(「アクティブタブ」のような)を私がいたものから削除し、それを私がクリックしたものに追加したいと思います。次に、アイテムを含むdivをリロードして、新しいアイテムをその中に入れます。

クラスを変更することは、純粋なjavascriptで行うのが最も簡単なようです。たとえば、コードをapplication.jsに配置してから、コンテンツでdivを更新するのがRJSで最も簡単です。しかし、何をすべきでしょうか?

4

2 に答える 2

3

JavaScript の記述に慣れている場合は、ぜひ JavaScript を使用してください。それは何も悪いことではありません。RJS が存在するからといって、RJS を使用する必要はありません。実際、その抽象化が邪魔になることに気付くでしょう。

ただし、ActiveRecord Migrations で SQL を生成する Ruby コードを記述するのと同じように、JavaScript を生成する Ruby コードを記述したい場合は、RJS が最適なツールです。または、両方を使用することもできます。RJS はかなり単純なものに使用し、JavaScript はより複雑な動作に使用します。自分に合っていると思うものを使用してください。

于 2008-10-22T11:27:39.477 に答える
1

生成されたページに直接リンクする機能をユーザーに提供したい場合は、間違いなく静的ページを選択してください。AJAX を使用すると、Really Simple History ( 100% クロス ブラウザーではない) などを使用しない限り、戻るボタンが機能しなくなるため、ページ ナビゲーションで JS ルートを使用すると、ほぼ確実にユーザーに問題が発生します。

そうは言っても、あなたがすでに議論したことは問題ないと思います-RJSファイルでクラスを変更するだけで、page.replaceとパーシャルを使用してdivコンテンツを更新することも役立つかもしれません:

page.replace(dom_id, :partial => @page_content);
于 2008-10-22T11:18:31.027 に答える