在移动应用程序上动态加载图像而不阻塞Javascript中的UI?
因此,我试图在用户滚动时动态加载javascript中的图像。整个应用程序是脱机的,并且是用HTML和javascript编写的。“滚动”行为是通过CSS3动画完成的在移动应用程序上动态加载图像而不阻塞Javascript中的UI?,javascript,iphone,html,css,mobile,Javascript,Iphone,Html,Css,Mobile,因此,我试图在用户滚动时动态加载javascript中的图像。整个应用程序是脱机的,并且是用HTML和javascript编写的。“滚动”行为是通过CSS3动画完成的 问题是,当我设置image.src=“foo.png”时,它会阻塞UI,直到图像加载完毕。有办法解决这个问题吗?用户界面被阻塞了多长时间?如果是本地的话,我就不会想太多了 无论如何,UI被阻止的原因可能是因为它需要下载图像以确定其大小。如果它不知道图像大小,它将不知道它将如何影响布局 我想做的第一件事是在创建标签后立即使用和高度属
问题是,当我设置image.src=“foo.png”时,它会阻塞UI,直到图像加载完毕。有办法解决这个问题吗?用户界面被阻塞了多长时间?如果是本地的话,我就不会想太多了 无论如何,UI被阻止的原因可能是因为它需要下载图像以确定其大小。如果它不知道图像大小,它将不知道它将如何影响布局
我想做的第一件事是在创建标签后立即使用和高度属性设置。下载图像不是阻碍因素。它可以使用图像对象下载它,但在onload回调中设置DOM元素的src属性时会导致它被阻止。首先,HTML是本地的,如果是,则没有理由使用onload事件,其次,无论加载速度有多快,图像的加载都会导致渲染器重新计算样式-问题是宽度和高度属性是否允许渲染器跳过此过程?我假设文档高度随着图像的添加而增加,因此渲染器必须弄清楚这是如何改变布局的(即在计算文档高度之前不能滚动)。是的,在这些更改之后,在加载图像时,文档高度只会停顿几毫秒,但仍然很明显。必须做一些不同的事情。文档高度是否随着src属性的设置而增加?如果是这样的话,我会说这是您的问题,因为渲染器必须在将滚动控制权返回给用户之前进行计算。