我想让这对象里面的图片加载完后才执行一个函数,应该怎么写呢?

roro5119 2015-10-17 07:20:37

var dataImg = {
"data": [{
"src": "12.jpg",
"link": "#12",
"title": "蜡笔小新12 - 百度百科"
}, {
"src": "13.jpg",
"link": "#13",
"title": "蜡笔小新13 - 百度百科"
}, {
"src": "14.jpg",
"link": "#14",
"title": "蜡笔小新14 - 百度百科"
}, {
"src": "15.jpg",
"link": "#15",
"title": "蜡笔小新15 - 百度百科"
}]
};
...全文
103 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
liusaint1992 2015-10-17
  • 打赏
  • 举报
回复
多张图片的话,类似这样:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
	<script type="text/javascript" src="http://libs.baidu.com/jquery/1.9.1/jquery.min.js"></script>
</head>
<style type="text/css">
	#ani{
		width: 425px;/*一张图片的宽*/
		height: 260px;
		padding: 0;
		margin: 0;
		/*overflow: hidden;*/
		position: relative;
	}
	ul{
		margin: 0;
		padding: 0;
		position: absolute;/*相对于#ani的绝对定位,因为ani设置了position: relative;*/
		left: 0;
		width:1275px;/*三张图片的宽*/
	}
	img{
		float: left;
		margin: 0;
		width: 425px;
		height: 260px;
	}
</style>
<body>
	<div id="ani">
		<ul>
			<img src="">
			<img src="">
			<img src="">
			<div style="clear:both"></div>
		</ul>
	</div>
	<script type="text/javascript">
		var dataImg = {
			"data": [{
				"src": "https://ss2.baidu.com/-vo3dSag_xI4khGko9WTAnF6hhy/super/whfpf%3D425%2C260%2C50/sign=fa7c10c2ab345982c5dfb6d26ac9059f/0b7b02087bf40ad10f784355512c11dfa8ecceec.jpg",
				"link": "#12",
				"title": "蜡笔小新12 - 百度百科"
			}, {
				"src": "https://ss3.baidu.com/9fo3dSag_xI4khGko9WTAnF6hhy/super/whfpf%3D425%2C260%2C50/sign=9565c94d0c46f21fc9610d1390195f52/f636afc379310a55f1b65942b14543a9832610f1.jpg",
				"link": "#13",
				"title": "蜡笔小新13 - 百度百科"
			}, {
				"src": "https://ss0.baidu.com/94o3dSag_xI4khGko9WTAnF6hhy/super/whfpf%3D425%2C260%2C50/sign=3f0b4058b28f8c54e386966f5c1419c7/6a63f6246b600c33171e587e1c4c510fd9f9a125.jpg",
				"link": "#14",
				"title": "蜡笔小新14 - 百度百科"
			}]
		};


		for(var i = 0; i<$("img").length;i++){
			$("img").eq(i).attr("src",dataImg.data[i].src);
		}

		//检测是否所有的都加载成功了。
		function chkLoad () {

			var counter = 0;
			$("img").each(function(){
				if (this.complete== true) counter++;
			});
			if (counter >= $("img").length) {
				successFun()
			}

		}

		var chkTimer = setInterval("chkLoad()",500);//不断检测是否加载成功了。

		function successFun(){
			alert("都加载成功了!");
			clearInterval(chkTimer);
		}
	</script>
</body>
</html>
天际的海浪 2015-10-17
  • 打赏
  • 举报
回复
类似这样

var img = new Image();
img.onload = function (){
	alert("图片加载完");
};
img.src = "1.jpg";

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧