我需要根据另一个元素的高度来设置一个元素的高度。假设当该元素完成渲染时,它的高度为 490 像素。
如果我在函数 inside 的开头查询其他元素的高度$(document).ready()
,它会返回 432px。
如果我在 a 中查询其他元素的高度setTimeout(function, 100)
,它会返回大约 475px。
如果我setTimeout
提高到 150 左右,则元素完成渲染,我得到 190。但显然我不能指望这一点。
如果可能的话,我不想等待整个页面完成加载;我只想等待这个元素。
似乎该load
事件应该适用于任意元素,但据我所知,这在浏览器中没有实现,或者至少在 Chrome 中没有实现。
编辑:该元素不是图像,并且(几乎可以肯定)元素内部永远不会有图像。它只是一个<div>
与其他一些<div>
s 和<p>
s 以及其中的东西。显然,在应用 CSS 或其他东西的中间会查询高度。代码示例即将发布。
编辑 2:这是一个从我的网站被黑掉的小提琴。(请原谅可怕的标记;我还没有清理 Drupal 的输出。)不过,小提琴没有表现出我试图纠正的不良行为,因为整个片段在 Javascript 的相关部分之前被渲染是跑。
有没有办法做到这一点,还是我坚持window.onload
?