0

我对条件及其触发有一点问题。我的 HTML 中有 2 个对象(div 和 img),我试图通过 JS 不断对齐。我的意思是,当窗口大小发生变化时,它们会重新对齐(因为一个对齐到中心 - 而不是:),我也不能将第二个对齐,因为我还需要匹配大小,这绝对需要JS)。

我做了一个小函数来对齐它们并为其设置适当的尺寸,并且我在每个 window.onresize 事件(以及文档准备就绪)上触发该函数。但我发现,它不会触发缩放动作,而且它更适合我不依赖 window.onresize。

所以我认为有可能写一个像这样的条件

if (div.width() != img.widht()) { // do something to match it again }

但事实证明,它只在就绪事件上运行此条件(分别是加载事件,因为我有一张图片)。所以我的问题是,如果有什么办法,那么条件就是不断地检查它的状态?我知道,我可能可以设置 Interval 来解决这个问题,但是 a)我想 99% 的执行都是毫无意义的,b)除非我将它设置为非常快速的重复,否则它甚至不会修复 div 和img 的不匹配问题立即出现。

非常感谢。

4

1 回答 1

0

您当然可以定义自己的自定义事件并在它发生时执行对齐代码,但您仍然需要一种在适当时间触发事件的方法。这只能发生在程序的普通执行流程(此处不是选项)或现有事件之一的处理程序中:如果在触发条件发生时没有一致地触发这些事件,那么您只剩下计时器。我很高兴在这件事上错了,尽管如此。

考虑requestAnimationFrame作为setInterval.

于 2013-06-09T13:12:04.507 回答