2016-06-10 1 views
0

Ich schrieb einige jQuery auf die Listenelemente (li) in meiner linken Navigationsleiste Ziel. Die jQuery funktioniert, wenn ich die Änderungen an Heroku übergebe, aber die jQuery, die ich geschrieben habe, funktioniert nicht auf dem localhost. Der Effekt, den ich anstrebe ist, wenn der Benutzer über die Links in der Navigationsleiste mauset, die Links bewegen sich nach rechts 2 em. Ich kann nicht herausfinden, warum die jQuery auf der gehosteten Website und nicht localhost funktioniert. Ich habe das Gefühl, dass es etwas mit der Datei application.js zu tun haben könnte. Jede Hilfe würde sehr geschätzt werden und danke im Voraus !!!jQuery arbeitet auf Heroku, aber nicht auf Rails localhost

// javascript assets 
// = require jquery 
// = require jquery_ujs 
// = require turbolinks 
// = require welcome.js 
// = require_tree . 

// the html 
<div class="list-items"> 
     <ul> 
     <li class="links"><%= link_to "Portfolio", portfolio_url %></li> 
     <li class="links"><%= link_to "Tutorials", tutorials_url %></li> 
     <li class="links"><%= link_to "Blog", blog_url %></li> 
     <li class="links"><%= link_to "About Me", aboutme_url %></li> 
     </ul> 
</div> 

// css for list items 
.list-items { 
    font-size: 1.5em; 
    line-height: 2em; 
    margin-left: -.20em; 
} 


// JS for hovering over the link 
$(document).ready(function() { 
    console.log("You are in the console right now!!"); 

    $(".links").on("mouseenter", function() { 
    $(this).css("margin-left", "2em"); 
    }); 

    $(".links").on("mouseleave", function() { 
    $(this).css("margin-left", "-0.05em"); 
    }); 
}); 
+0

Wenn Sie versuchen, auf localhost auszuführen, was ist der Fehler, der Sie konfrontiert sind? – Nirupa

+0

@Nirupa Ich bekomme keine Fehler, wenn ich es auf localhost ausführen. Alles funktioniert gut außer dem JavaScript. –

Antwort

0

Es gibt eine Sache, die hier in den Sinn kommt ...

TurboLinks funktioniert nicht gut mit

$(document).ready(function() {

Denn wenn Sie navigieren, nicht Turbolinks nicht die Seite neu laden . Es ist möglich, dass es auf Ihrem lokalen Computer nicht funktioniert, nur weil Turbolinks die Seite lädt. Und in der Produktion hast du vielleicht anders navigiert und die Seite hat dieses Ereignis tatsächlich ausgelöst.

Weitere Informationen hierzu finden Sie unter Rails 4: how to use $(document).ready() with turbo-links.

+0

Ich habe $ (Dokument) .ready() mit Rails zuvor verwendet und ich hatte nie Probleme. Es ist eine Weile her, seit ich jQuery benutzt habe, also habe ich irgendwie vergessen, wie ich es mit Rails spielen kann. –