我想显示消息,然后使用setTimeout
功能隐藏它们。所以我希望我传递给setTimeout
函数的函数取一个参数,隐藏的消息,所以我可以使用1个通用的回调函数。我尝试了下面的代码,但回调执行时label
参数未定义。
var label = $('.js-a-label');
label.html('the message!');
setTimeout(hideMessage(label), 5000);
function hideMessage(label) {
label.html('');
}
答案 0 :(得分:1)
在 代码中,您可以使用@AssociationOverride(name = "client", joinColumns = { @JoinColumn(name = "client_idx", foreignKey = @ForeignKey(name = "FK_TEST")) })
,因为您的功能会关闭它:
label
在您正在调用的函数关闭您希望它使用的信息的一般情况下,您有几个选项:
添加以下功能:
var label = $('.js-a-label');
label.html('the message!');
setTimeout(hideMessage, 5000);
function hideMessage() {
label.html('');
}
使用Function#bind
(ES5 +)
var label = $('.js-a-label');
label.html('the message!');
setTimeout(function() { hideMessage(label); }, 5000);
var label = $('.js-a-label');
label.html('the message!');
setTimeout(hideMessage.bind(null, label), 5000);
会返回一个新函数,在调用时会调用具有特定Function#bind
值的原始函数(我们不需要它,所以我只使用上面的this
)和任何您提供的参数null
。
使用$.proxy
,其功能与bind
完全相同:
Function#bind