通过url jquery添加新的图像对象

时间:2016-01-09 16:46:56

标签: javascript jquery

我尝试在jquery中创建一个新的图像对象。我有图像src,我希望动态创建图像对象。我知道我可以用这种方式获得一个新形象:

$image = new Image();

但我想做的是替换,所以我不需要从头开始新的图像。上面的代码在我的控制台中显示如下:

<img src="url_of_image">

如何使用src url创建图像而不是创建新对象? 我尝试了下面的语法,但不起作用:

var img = '<img src='+new_url+'';
var img = $('<img src='+new_url+'');

任何想法???

我补充说:

    var new_url = url;
    var img = new RImage(new_url);
    console.log(img);
    img.onload = function() {
    var img_w_original=this.width;
    var img_h_original=this.height;
    img_w=img_w_original;img_h=img_h_original;
    img_ratio=img_w/img_h;
}
if (banner_ratio>=1)
        {
        if (banner_ratio<=img_ratio)
            {
            img_w=banner.width;
            img_h=Math.round(img_w/img_ratio);
            }else{
            img_h=banner.height;
            img_w=Math.round(img_h*img_ratio);
            }
        }else{
        if (banner_ratio<=img_ratio)
            {
            img_w=banner.width;
            img_h=Math.round(img_w/img_ratio);
            }else{
            img_h=banner.height;
            img_w=Math.round(img_h*img_ratio);
            }
        }

我无法获得img_w和img_h ..为什么?

2 个答案:

答案 0 :(得分:0)

最后一个几乎就在那里

var img = $('<img />', {src : new_url});

现在你所要做的就是将它插入DOM的某个地方!

答案 1 :(得分:0)

function Image(path, width, height, target) {
    $('<img src="'+ path +'">').load(function() {
        $(this).width(width).height(height).appendTo(target);
    });
}