下载过来的图片高度和长度都为:0;

来源:3-6 获取图片尺寸

yuyuda

2015-07-21 14:20

您好,为什么我写的代码attr("src",sourceSrc)中的src传不过来,以致图片的高度和长度都为:0;

能帮忙解释下吗,谢谢!

写回答 关注

3回答

  • 一只帅蚂蚁
    2015-07-21 15:22:38
    已采纳

    这种情况下,一般回事图片还没有加载完成就获取尺寸,还有就是图片是否已经在DOM结构里面,如果单纯创建Image对象,没有插入到页面,通常会出现这种情况,注意~~

    天真De孩子

    很多时候 在写页面的时候 需要计算图片的高度。但计算出来的都0。也就是 jq 的计算的时候 图片其实还没有加载完成 是吧! 但是 平时也没有像这样写一整套代码 有时候只判断一下图片高度 然后做出一些效果。这种情况怎么弄呢

    2015-08-16 17:16:34

    共 2 条回复 >

  • 一只帅蚂蚁
    2015-07-21 15:20:30

    贴出代码看下

  • yuyuda
    2015-07-21 15:26:22
    loadPicSize:function(sourceSrc){
                var self=this;
                this.preLoadImg(sourceSrc,function(){
                    self.popupPic.attr("src",sourceSrc);
                    var picWidth=self.popupPic.width(),
                        picHeight=self.popupPic.height();
                    self.changePic(picWidth,picHeight);
                });
            },
    preLoadImg:function(src,callback){
                var img=new Image();
                if(!!window.ActiveXObject){
                    img.onreadystatechange=function(){
                        if (this.readyState=="complete") {
                            callback();
                        };
                    };
                }else {
                    img.onload=function(){
                        callback();
                    };
                };
                img.src=src;
            },


JS插件开发之LightBox图片画廊(上)

图片画廊插件开发综合演练,快来加入我们的课程吧

27071 学习 · 81 问题

查看课程

相似问题