jQuery fadeOut一遍又一遍执行回调,这是为什么,如何防止这种情况呢?
-
22-07-2019 - |
题
我的方法淡出div框并有一个调用方法的回调...如下: 通用标签
执行此操作(单击按钮时),我在resetWindow中有一个警报,以查看它执行了多少次。
它似乎永远执行,但我坐在那里的时间不够长,无法关闭警报窗口以查找结果。
我做了一些研究,并阅读了Jquery文档:
回调(可选)功能
每当动画完成时要执行的功能,针对每个动画元素执行一次 。所以我想知道,即使我只是淡出1 div,它也算为1。 div的每个子元素加1吗?
从技术上讲,它们是动态的,因为内部元素随着外部div逐渐淡出,但是如果您在萤火虫中观看javascript,则只有我正在淡出的外部div会改变其不透明度/显示。
如果发生这种情况,如何确保回调仅执行一次?
编辑:这是在函数之前我尚未定义numWindowsOpen的那行
numWindowsOpen--;
,因此由于某种原因使调用多次发生...谁能解释为什么会发生这种情况? / p>
解决方案 2
问题在于numWindowsOpen在它递减之前没有被声明...提醒您,在进行更复杂的操作之前,请确保您先找到类似的简单内容。
其他提示
对于与选择器匹配的每个元素,回调仅应被调用一次。直接在回调中添加警报消息时,您会看到多个警报吗? 通用标签
不隶属于 StackOverflow