简体   繁体   中英

Loading JavaScript in Rails App

I'm trying to initiate a JS file when clicking on a link "link_to" in my rails app.

I ensured the the asset pipeline is working correctly by testing with

$(document).ready(function() {
    alert("test");
});

and the alert popups without a problem.

However, the script only loads when I refresh after the page is loaded. I've tried the code below without any luck but as I said, it works once the page is reload.

var ready;
ready = function() {

  //My JS Code

};

$(document).ready(ready);
$(document).on('page:load', ready);

I have the Turbolinks gem file complied Gem file below

//= require jquery
//= require jquery.turbolinks
//= require jquery_ujs
//= require bootstrap-sprockets
//= require jquery.slimscroll
//= require app
//= require zopim
//= require turbolinks

I'm sure it's something small I'm missing. I've seen examples using coffee script but I don't know enough about it to use it at this time.

Edit:

While monitoring Network under Chrome Dev tools, I noticed that none of the JS load until I hit F5 to reload the page but I don't seem to have problems with the other scripts. This might be a separate issue.

也许试试这个?

$(document).on('turbolinks:load', ready);
$(document).on('turbolinks:load', function() {
  //My JS Code
}) 

This should work for you.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM