尝试做http://davidwparker.com/2008/09/17/site-wide-announcements-in-rails-using-jquery-jgrowl/
JS非常糟糕。想想我在最后一部分搞砸了“这段代码放在你的application.js文件中(某处是$(function){// here})”
我是不是不想做一个link_to_function并使用引用该链接的代码创建一个函数?
真的迷失了这个。
更新 -
application.js看起来像
$(document).ready(function() {
$.jGrowl.defaults.closer = true;
$("#announcements_box").css("display", "none");
$("#announcements_box .announcement").each(function(){
$jQuery.jGrowl(this.textContent,{ sticky:true, close:function(e,m,o){hide_announcements();} });
});
});
function hide_announcements(){
$.get(
'/hide_announcements'
);
$("#announcements_box").fadeOut();
return false;
}
我的application.html.erb有
<% unless current_announcements.empty? %>
<div id="announcements_box">
<% for announcement in current_announcements %>
<div id="announcement_<%= announcement.id.to_s %>" class="jGrowl">
<%= announcement.message %>
<%= link_to "Hide Annoucements", hide_announcements_path, :id => 'hideAnn'%>
</div>
<% end %>
</div>
<% end %>
答案 0 :(得分:0)
我不确定$(function){ //here }
符号的含义是什么,应该在浏览器中给出错误,但我认为他只是想在页面加载后执行代码:
$(document).ready(function() {
// here
}
答案 1 :(得分:0)
罪魁祸首是当我需要一个div ID和类时,我只输入了一个div ID。