据我所知,到目前为止,我对CSS3过渡没有任何问题.突然(可能是因为Chrome更新或对我的代码进行了其他修改)它刚刚停止使用chrome(32.0.1700.77),但仍适用于所有其他浏览器(以及较旧版本的chrome).
@media screen and (max-width: 1325px) {
.row-offcanvas {
position: absolute;
-webkit-transition: all 0.25s ease-out;
-moz-transition: all 0.25s ease-out;
transition: all 0.25s ease-out;
width: 100%;
}
button.toggle {
display: inline-block;
}
.row-offcanvas-left,
.sidebar-offcanvas {
left: -239px;
z-index: 9999;
height: 700px;
}
.row-offcanvas-left.active {
left: 239px;
}
.sidebar-offcanvas {
position: absolute;
top: 0;
width: 239px;
}
}
Run Code Online (Sandbox Code Playgroud)
我没有对网站的这一部分进行任何更改,我无法解释为什么它可能不会突然发生.转换是针对一个面板,当单击按钮时,该面板会滑出,由这个javascript(不负责动画)触发.
$(document).ready(function() {
$('[data-toggle=offcanvas]').click(function() {
$('.row-offcanvas').toggleClass('active');
});
});
Run Code Online (Sandbox Code Playgroud) 我有一个模型Expense.rb,用户有很多.可以通过ajax表单添加新费用,因此我有适当的文件设置(create.js.erb,destroy.js.erb ..等)
目前,当通过远程表单提交新费用时,还会在create.js.erb中更新金额总和,这在我的Expense模型中如下所示:
def total_value
Expense.sum(:amount)
end
Run Code Online (Sandbox Code Playgroud)
create.js.erb:
$('#total').html('$<%= number_with_delimiter(@expense.total_value) %>');
问题是这总结了数据库的所有费用,而我只需找到current_user(我知道无法从模型访问).
在我的控制器内部,在索引操作上,我这样做:
@expenses = current_user.expenses
@total_value = @expenses.sum(:amount)
Run Code Online (Sandbox Code Playgroud)
这意味着我只需执行以下操作即可在索引视图中为current_user获取它:
<%= number_with_delimiter(@total_value) %>
但至于创造行动:
def create
@expense = Expense.new(secure_params)
@expense.user = User.find(current_user.id)
@expense.save
respond_to do |format|
format.html { redirect_to index_expense_path }
format.js
end
end
Run Code Online (Sandbox Code Playgroud)
我不确定如何将current_user传递给模型中的total_value,以便只计算create js.erb中使用的total_value中的current_user id.