在IOS应用中内嵌H5页面中,new Image()的onload事件失效怎么办?

我需要把一段base64的图片地址生成一张图片然后用canvas画出来。但是转图片的这步卡住了,在安卓或者网页浏览器中没有问题,但在IOS中失效。我试过由js直接new Image()创建:


      var img = new Image();

      img.onload = function(){

        var w = this.width,

        h = this.height;

        alert("图片尺寸:"+w+"*"+h)

      };

      img.src = base64_img;

或者先在页面上定义一个<img>标签,然后赋值:


    <img id="test" style="display:none;" src="">


      var img = $("#test")[0];

      img.onload = function(){

        var w = this.width,

        h = this.height;

        alert("图片尺寸:"+w+"*"+h)

      };

      img.src = base64_img;

但是都不能生效,在ios中onload事件根本不会触发,就算直接用$(img).trigger('load');或者$(window).trigger('load');触发也无法获取图片的尺寸,也无法直接用drawImage(image, x, y)画在画布中。请问该怎么解决呢?怎么让image的onload在ios中生效?


料青山看我应如是
浏览 445回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript