将 $(this) 传递给 jQuery 中的回调?
我有两个效果,我想依次运行,但我不知道如何将 $(this)
从第一个效果传递到回调。
这就是我现在所拥有的:
if($(this).hasClass('flag')) {
$('someElement').slideUp();
$(this).slideDown();
}
但我想要的是 SlideDown 在 SlideUp 完成后运行,即。
if($(this).hasClass('flag')) {
$('someElement').slideUp(function() {
$(this).slideDown();
});
}
除了该阶段的 $(this)
现在改为引用 someElement
之外,因此无法按计划工作。
如何引用我原来的 element.flag
。我尝试使用 $this = $(this)
但我认为我的语法一定是错误的。
有什么想法吗?
I have two effects that I want to run one after another, but I can't work out how to pass $(this)
to the callback from the first effect.
This is what I have at the moment:
if($(this).hasClass('flag')) {
$('someElement').slideUp();
$(this).slideDown();
}
But what I want is for the slideDown to run after the slideUp is complete, ie.
if($(this).hasClass('flag')) {
$('someElement').slideUp(function() {
$(this).slideDown();
});
}
Except $(this)
by that stage now refers to someElement
instead and so doesn't work as planned.
How do I refer to my original element.flag
. I tried using $this = $(this)
but I think I must have the syntax wrong.
Any ideas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
保存参考。
Save the reference.
像这样缓存它...只是不要忘记
var
。cache it like this... just don't forget the
var
.试一试:
Give this a shot: