我在 Rails 中创建了一个滚动导航,需要访问 root url + '#about'
和页面的类似部分。
这是我的html:
<%= link_to "Home", root_path, class: "nav-link", :"data-id" => "home" %>
<%= link_to "About", root_path, class: "nav-link", :"data-id" => "about" %>
<%= link_to "Testimonials", root_path, class: "nav-link", :"data-id" => "testimonials" %>
这是js代码:
// Scrolling Nav
$(".nav-link").click(function(){
var topData = $( '#' + $(this).attr("data-id")).offset();
$('html, body').animate({
scrollTop: topData.top
}, 'slow');
});
默认情况下,将滚动到 data-id 或 div 内容部分 ID 为
home
的部分, about
, testimonials
Rails 中有没有可以插入
root_path
的方法? + 特定文本,如 #about
在我的链接上,如果用户单击 About
之类的链接链接它将解析 url http://localhost:3000#about
我试过这个:
<%= link_to "About", root_path#{#about}, class: "nav-link", :"data-id" => "about" %>
但没有奏效。有没有办法做到这一点?请帮忙!
最佳答案
我不确定我是否理解正确,但您应该能够像这样锚定所需的文本:
root_path(:anchor => 'about')
关于ruby-on-rails - rails 5 : Adding extra characters on the links,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59726844/