gpt4 book ai didi

javascript - 如何在另一个原型(prototype)事件完成后触发原型(prototype)事件?

转载 作者:行者123 更新时间:2023-11-30 18:23:05 25 4
gpt4 key购买 nike

例如,这样做:

new Effect.Move('agrupador', { x: -100, y: 0, mode: 'relative' });
Element.setStyle('agrupador', {left: '0px' });

在元素向左移动之前应用左侧位置,但我想要相反的位置。

有什么办法吗?

PD:我会烧掉原型(prototype),我保证。

最佳答案

这是一个 fiddle :

http://jsfiddle.net/uF9Dh/

new Effect.Move('agrupador', {
x: -100,
y: 0,
mode: 'relative',
afterFinish: function() {
Element.setStyle('agrupador', {left: '0px' });
}
});

移动效果是异步的。当您调用 new Effect.Move() 时,您正在设置在一秒钟内发生的事情。在您发布的代码中,您在实例化效果后将 left 属性设置为 0px不是在效果完成之后。为此,有一个 afterFinish 回调。您可以查看 Scriptaculous 效果的其他可用回调 here .

顺便说一句 - 这个问题不是 Prototype 或 Scriptaculous 特有的,而是 Javascript 中异步操作的工作方式。

关于javascript - 如何在另一个原型(prototype)事件完成后触发原型(prototype)事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11583975/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com