2017-10-03 5 views
0

私はレールアプリケーションを構築しており、ページ固有のアプリケーションを持っています。ページ固有のJavaScriptが動作しない

私は私のPagesControllerのための私のindex.html.erbの下にこれを追加しました:

<script> </script> 

それが一番上にある場合、コードは0navbar不透明度を設定しますが、何とかこれもに表示私のcontactcontrollerのためのnew.html.erb

これはどうやって起こっているのですか?

$(document).ready(function() { 

    $(window).scroll(function() { /* run on load */ 

     if ($('.nav-fixed-top').css("opacity") == 0) { 
      $('.nav-fixed-top').fadeTo(500, 1); /* fadeIn if not visible */ 
     } else { 
      if ($(window).scrollTop() === 0) { 
       $(".nav-fixed-top").fadeTo(500, 0); 
      } 

     }; 
    }); 
}); 

これは私のPagesControllerのための私のindex.html.erbの一番下にあります。でも、ContactControllerのためにnew.html.erbが呼び出されているようです。

+0

コードを表示してください。あなたが何をしているのかわからなければ、あなたを助けることはできません。 –

+0

質問を編集しましたが、htmlの「」タグがそこに隠されていました。ようこそstackoverflowへ。マークダウンの構文を正しく使用してください – GabLeRoux

+0

ガベと夏ありがとうございます。私は皆さんのためにコードを追加しました。 –

答えて

0

なぜスクリプトタグ内で起こっているのかについては言えませんが、Railsアプリケーションでできるだけタグを使用しないことをお勧めします。この問題を解決するには、pages.jsファイルにそれを入れて、これを使用します。 -

var new_page_regex = new RegExp(/pages\/new/); 

if(new_page_regex.test(window.location.pathname) { 
    /* your code here*/ 
} 
+0

これが助けになった場合は、回答を受け入れることを検討してください – colincr

関連する問題