如何从* .js.erb文件滚动到顶部

时间:2011-10-12 19:43:54

标签: jquery ruby-on-rails-3

我正在使用Rails 3开发一个网站,此时我想在显示错误消息(显示在页面顶部)后滚动到顶部。

到目前为止,我已经从我的display_error_message.js.erb文件中尝试了以下内容:

$('#general-messages').html("<%= escape_javascript(render :partial => 'shared/error_message', :object => flash[:error]) %>");
$('html, body').animate({scrollTop:0}, 100);

这不起作用。我的意思是,第一行工作正常,但不是第二行。

在尝试之后,我尝试在我的视图中编写以下代码(只是为了查看它是否有效),并确实有效:

$(document).ready(function () {
    $('#to-top').click(function () {
        $('html, body').animate({scrollTop:0}, 100);
    });
});

然后,我意识到它与文件就绪事件有关,但我不能在我的js.erb文件中使用它(我认为),或者至少它对我没有意义。

你能告诉我怎么做吗?

1 个答案:

答案 0 :(得分:0)

您可以将.js.erb代码放入另一个$(document).ready块中。加载文档并触发ready事件后,将按顺序执行传递给$(document).ready的每个代码块。