L-xl 2020-03-22 17:23 采纳率: 75%
浏览 575
已采纳

请问一下为什么在第一次打开网站时图片的高度是0刷新一次之后高度就正常了,该如何让图片的高度在第一次打开时就正常

createPicture(base64, obj = {type: "png"}) {
        let article = this.$container.children("article:last-child");
        if (article.length === 0) article = this.addPage();
        let h = 0;
        article.children().each(function () {
            h += $(this).outerHeight(); 
        });
        if (!base64.startsWith("data:image/")) base64 = `data:image/${obj.type};base64,${base64}`;
        let $new = $(`<img src="${base64}" title="${typeof obj.title === "string" ? obj.title : ""}" alt="${typeof obj.alt === "string" ? obj.alt : ""}">`);
        if (typeof obj.style === "object" && obj.style !== null) $new.css(obj.style());
        article.append($new);
        if (h + $new.outerHeight() > this.getPageHeightLimit()) {
            $new.remove();
            this.addPage().append($new);
        }

上面是我动态添加一张图片的方法

请教一下大佬们,我在第一次打开网页时,$new.outerHeight()为0,但刷新一次之后就恢复正常.这是什么原因?我应该如何让$new.outerHeight()在第一次打开时就是正常的高度?

  • 写回答

2条回答 默认 最新

  • UFO_SERIESOFSOFT 2020-03-22 18:57
    关注

    图片高度判断只能在load事件后,即$new.bind('load',function(){//这里开始可使用宽高})

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已采纳回答 12月12日

悬赏问题

  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制