2012-03-05 6 views
0

Rails 3アプリケーションを構築していて、jQuery .on()関数が動作するようにしようとしています。現在は何もしていません。資産/ JavaScriptの/ V-application.jsでRails 3でjQuery .on()を動作させる

console.log('application'); 

$('body').on('click', function(){ 
    alert('test'); 
}); 

アプリをロード、コンソールディスプレイ「アプリケーション」(それが必要のように)、私は、体に何の警告射撃をクリックしません。私はコンソールにその正確な同じJavaScriptを貼り付けて、本文をクリックすると、適切な警告が発生します。

ブラウザでv-application.jsを表示すると、その機能が表示されます。

最新のjquery-rails(2.0.1)とレール(3.2.2)を使用しています。これはすべて開発環境にあります。

Railsは基本的な関数呼び出しの処理方法を知らないのですか?これは資産パイプラインと関係がありますか?私はそれをどのように働かせることができますか?

+3

準備ができましたか? – loganfsmyth

+1

Railsがどういうふうに処理しているのかわからない、それはRailsとはほとんど関係がありません。 JSコンソールには何かありますか? –

答えて

2

私はあなたに準備ができていないと推測します。

$(function() { 
    $('body').on('click', function(){ 
    alert('test'); 
    }); 
}); 

あなたがメインのJSファイルに直接コードを貼り場合は、スクリプトタグが解釈されるとき、bodyタグがまだ処理されていないので、何かを見つけることができません$('body')を行います。準備関数の中にロジックを置くと、ドキュメント全体が解析されるのを待つでしょう。

+0

それはそれでした。私は初期の準備機能を持っていましたが、他の問題を抱えていて、複雑さを減らし問題を切り分けるためにすべてを取り除いていました。もちろん、私はスタックに新しい問題を導入しました。 – charliepark

+0

ああ、別の問題を修正するために1つの問題を導入するのが最悪です.P喜んで助けてください。 – loganfsmyth

0

jQuery 1.7.1を使用していますか?それが起こったのは、前に問題があったからです。

ここjsFiddle:http://jsfiddle.net/LmC6x/

@loganfsmythがが言ったように、私は準備ができて機能を使用してお勧めします。

関連する問題