问题描述
加载图片时用js获取高宽值,<imgsrc="1.jpg"onload(this.width,this.height)>这种方法在firefox和chrome下可以,但是ie6-8有时获取不到,请教各位js高手,如何准确的获取非常感谢!!
解决方案
本帖最后由 yingiloveyou 于 2011-11-21 10:53:47 编辑
解决方案二:
刚好像问到这问题。IE兼容问题。可以在页面上加<metahttp-equiv="X-UA-Compatible"content="IE=EmulateIE7"/>解决。
解决方案三:
自己搜索半天,找到一篇文章,解决了,应该这么写<imgonload(this.width,this.height)src="1.jpg">应该把onload写到src前面,先告诉浏览器图片加载完要怎么处理,再让它去加载图片。所以,不是IE浏览器不会触发onload事件,而是因为加载缓冲区的速度太快,在没有告诉它加载完要怎么办时,它已经加载完了。谢谢原文作者附上原文链接:http://www.iefans.net/ie-image-duixiang-onload/
解决方案四:
引用1楼daxuejianku的回复:
刚好像问到这问题。IE兼容问题。可以在页面上加<metahttp-equiv="X-UA-Compatible"content="IE=EmulateIE7"/>解决。
非常感谢你的回复,刚自己找到解决办法了。你说的方法,我测试了,好像还是不行,参考下2楼的回复吧~~
解决方案五:
引用2楼yingiloveyou的回复:
自己搜索半天,找到一篇文章,解决了,应该这么写<imgonload(this.width,this.height)src="1.jpg">应该把onload写到src前面,先告诉浏览器图片加载完要怎么处理,再让它去加载图片。所以,不是IE浏览器不会触发onload事件,而是因为加载缓冲区的速度太快,在没有告诉它加载完要怎么办时,它已经加载完了。谢谢原文作者附上原文……
onload一定要在给src赋值之前就设定好的varimg=newImage();img.onload=function(){//dosth}img.src="1.jpg";
解决方案六:
引用4楼liangws的回复:
引用2楼yingiloveyou的回复:自己搜索半天,找到一篇文章,解决了,应该这么写<imgonload(this.width,this.height)src="1.jpg">应该把onload写到src前面,先告诉浏览器图片加载完要怎么处理,再让它去加载图片。所以,不是IE浏览器不会触发onload事件,而是因为加载缓冲区的速度太快,在没有告诉它加载完要怎……
恩,明白了,谢谢
时间: 2024-10-11 21:57:25