我正在使用jQuery在hover()上设置高度变化的动画.
在悬停时,它将应用.hover类,并在单击时,它将切换.expanded类.它主要是有效的,有适当的动画,但只是在第一次之后.第一次悬停将完全跳过动画.
我很难过 - 这是令人讨厌的代码:
$('#expandingbox').hover(
/*on mouseenter, if not expanded, add hover class*/
function() {
if (!$(this).hasClass("expanded")) {
$(this).stop(true, true).addClass("hover", "slow");
}},
/*on mouseout, if not expanded, remove hover class*/
function() {
if (!$(this).hasClass("expanded")) {
$(this).stop(true, true).removeClass("hover", "slow");
}
}).click(function() {
$(this).toggleClass("expanded", "slow");
});
Run Code Online (Sandbox Code Playgroud)
我找到了添加$('#expandingbox')的地方.触发器('mouseout')将解决这个问题,但它对我不起作用.这是一个重现问题的例子:http: //jsfiddle.net/Qc42v/
更新: 提交一张票,结果证明这是一个jQuery错误.相同的代码适用于jQuery 1.5(以及最新版本的jQuery UI).
在Rails 3.1应用程序中,我有一个user_logged_in?从Devise 调用的方法,我想用它来有选择地渲染部分.这是layouts/application.html.erb中的代码:
<% if user_logged_in? %>
<%= render :partial => "home/statusbar" %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
它使用来自不同控制器的部分.这是部分:
<div id="status_bar">
Signed in as <%= link_to current_user.name, edit_user_registration_path %>
</div>
Run Code Online (Sandbox Code Playgroud)
current_user.name(未定义的方法)发生错误,因为current_user是nil.我可以user_logged_in?在部分内部移动支票,但我认为如果它在视图中会略微提高效率.
您能指导我了解最佳实践,或者如何克服未定义的方法错误?Rails检查模板的代码是否正常,即使它在if块中失败了?
我希望有一个多个对象的可用性表,并进行比较.例如,承租人将搜索租赁单位,该单位可在星期一下午1-3点开始使用.
要做到这一点,我想我会将一周划分为30分钟的时段,并为每个时段分配一个ID.然后日期范围将搜索相应的时隙ID.
然而,那时我需要5040条记录来跟踪每个时间段,而且我对于手动维护它并不太兴奋(在Ruby中我不知道如何去做).是否有更优雅的方法,通过使用日期时间,或一些Rails插件,将执行类似于我想要的东西,但更容易?
关键要求是它必须比较多个分开的时间块.
编辑:如果可以有一种比较多个时间块来查看最佳匹配的方法,那将是一个奖励.例如,如果我想在星期一,星期三和星期五租用摄像机,并且一天有一台摄像机可用,而另一台摄像机只有两天可用,我希望能够对摄像机进行比较和排序.最佳匹配的基础.
ruby algorithm database-design ruby-on-rails ruby-on-rails-3