开发者社区> 问答> 正文

急急急!!!js中创建图形new Image()的问题!!!?报错

var img = new Image();   // Create new Image object 
img.onload = function(){  
// execute drawImage statements here 

img.src = 'myImage.png'; // Set source path 

img.id = "img1";

var imgnew = document.getElementById("img1");

alert(imgnew.src);//此行报错,所对象为空,怎么会这个样子??????????

 

展开
收起
爱吃鱼的程序员 2020-06-22 22:52:30 1477 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    varimgnew=document.getElementById("img1");

    这个地方不对,img还没有被添加到dom里面,是get不到的

    回复 @小鱼吹泡泡:需要用代码放入dom,例如jq的insert和append之类的函数怎么才能得到呢,应该把这个获取对象的语句放在哪个位置?     varimg=newImage();//创建一个image对象    img.src="path.png";//指定img的src属性    img.id="id";//指定img的id    //以上三步创建了一个Image对象,但此对象并没有放到dom结构里    //它是独立存在的    window.onload=function(){        //将创建的Image对象添加到html的dom树里        document.body.appendChild(img);        //document.getElementById是从dom结构中查找指定id的节点        //但如果对象没有放置到dom树,显然是查找不到的        varmyImg=document.getElementById("id");        //如果上一步查找指定的id对象,而该对象不在dom结构里,则myImg为null        //下一步的alert中,由于myImg为null,对null采取属性获取,会报错        //但由于第一步已经将img放到了dom里,现在不会错了        alert(myImg.src);    }谢谢哈! 用代码来创建newimage好复杂啊!可不可以有第三方插件什么的来帮助 createnewimage ?跪求好的建议!谢谢!
    2020-06-22 22:52:49
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
JavaScript异步编程 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载