我正在进行rails应用程序,我将深入研究Javascript以了解我的Web应用程序的行为,所以这就是问题
我有很多帖子和帖子的新闻源有很多评论,评论被隐藏在帖子中
post.css
#comments-section{
display: none;
}
发布/索引“新闻提要”
<%= link_to "Comments", "#", id: "comments-link" %>
<section id="comments-section">
<%= render 'commenters/newsfeedcomment', obj: post %>
<% if current_user == post.user %>
<h6 align="right"><%= link_to 'Edit', edit_post_path(post) %></h6>
<h6 align="right"><%= link_to 'Delete', { :id => post ,:controller => 'posts',:action => 'destroy'} %></h6>
<% end %>
</section>
现在我尝试检查我的评论链接以触发但它不起作用,我不知道如何debbug
$(document).on "page:change", ->
$('#comments-link').click ->
alert "clicked"
答案 0 :(得分:1)
首先,如果你要有多个#comments-link
,那么你应该把它变成一个类而不是一个id。
其次,您使用Turbolinks的问题是什么?有一个jquery.turbolinks
gem使Turbolinks page:change
事件像DOM就绪事件一样工作。
第三,你也可以把监听器放在一些不进入和离开DOM的DOM元素上。
$('.container').on 'click', '#comments-link' ->
alert 'clicked'
这会将一个侦听器附加到.container
元素,但只侦听来自#comments-link
元素的事件。