jquery图像加载检查错误
jquery image load check error
我正在尝试使用以下代码检查是否所有图像都加载在容器中
$(document).ready(function () {
$(".slide img").each(function (index) {
var fakeSrc = $(this).attr('src');
$("<img/>").attr("src", fakeSrc).css('display', 'none').load(function () {
alert('loaded');
}).
error(function () {
load_img_Single(fakeSrc);
});
});
function load_img_Single(img) {
alert(img);
var ruth;
$("<img/>").attr("src", img).css('display', 'none').load(function () {
ruth = 'yeap';
}).error(function () {
ruth = 'nope';
});
alert(ruth);
}
});
现在你可以看到im使用一个假的容器来加载图像,并检查它是否已经加载。
我在第一次检查图像时使用.error来查看它是否正确加载,如果没有,它会执行我的函数load_img_Single(图像)函数来再次加载它。
现在,在这个函数中,我再次检查它是否已加载。但问题是变量"ruth"没有被设置为该函数中的任何值。它已在外部声明,但仍以"未定义"的形式出现。
任何见解都将不胜感激。
原因是加载图像是异步的。当你打电话时:
$("<img/>").attr("src", img).css('display', 'none').load(function() {
ruth = 'yeap';
}).error(function() { ruth = 'nope'; });
load
或error
尚未激发。这就是为什么在之后立即调用alert(ruth);
时ruth
是未定义的
相关文章:
- 在node.js中写入ECONNRESET错误和套接字连接检查
- 错误检查在Javascript中不起作用
- javascript window.location在检查firebug时给了我一个错误的url路径
- 正在检查ajax响应中的错误数据
- Visual Studio代码未在Javascript中执行错误检查
- JavaScript游戏引擎——编辑器中的代码运行:)检查器中的错误
- Ajax错误检查-如果Ajax请求失败,如何防止内容发生更改
- 检查登录错误Android WebView Javascript
- 在文本区域检查电子邮件数据时出现奇怪的jquery错误
- 将PHP变量传递给javascript/jquery进行错误检查
- 使用 AJAX 和 JSP 错误检查用户名可用性
- j查询表单错误检查
- 如何仅根据显示的项目处理错误检查
- HTML-如何在javascript中对文本区域的空值输入进行错误检查
- Chrome's IndexedDB错误"内部错误检查键存在"是什么意思?
- 错误检查输入,Javascript
- 表单一旦被错误检查破坏就不会提交
- Java联网,错误检查和数据库
- 带语法错误检查和调试的Javascript编辑器
- 样式错误检查元素