0

我构建了自己的表单脚本,并希望预加载一个“加载”图标,该图标会在点击提交按钮时显示。

我正在使用这段代码:

var icon = $('<img />').attr('src', 'images/status.gif');

我的问题:使用 jQuery 创建图标的 html 标记时,图像是否会被缓存 + 立即显示?像:

statusDiv.html("<img src='images/status.gif'> Submitting ..");

谢谢

4

2 回答 2

2

是的,执行此操作时图像将从缓存中提取 :) 它不是专门的 jQuery,这只是本机浏览器行为,无论您以何种方式创建图像都应该有效。

这里的例外是 Opera IIRC,默认情况下它不会预加载图像,因为它意识到它还没有被显示,除非这种情况下它应该表现得像你想要的那样。

另一种可能的情况是图像还没有时间加载,例如,如果我在加载页面后非常快地单击提交,但这应该不太可能,并且获取图像的请求应该已经在运行。


顺便说一句,如果仅针对此图像,您可以缩短预加载:

var icon = $('<img src="images/status.gif" />');
于 2010-08-08T14:04:02.970 回答
1

也许您可以尝试将其放置在正确的位置,仅使用 XHTML,并使用 CSS 使其不可见。我猜它会被加载,然后单击它会使其可见。

您可以在萤火虫中检查您的网络选项卡。

请让我们知道这项工作。

于 2010-08-08T14:04:49.723 回答