简体   繁体   中英

Loading Image into document.body Background

I'm attempting to pull an image (in this case, /camera/frame , which is a known-good JPG), and load it as the background of my document.body .

Here's my code thus far:

var backgroundImage = new Image();
backgroundImage.onload = function ()
{
    console.log("onload");
    document.body.style.backgroundImage = this.src;
};

backgroundImage.src = 'camera/frame'; 

"onload" prints as expected, and this.src prints out the full URL to /camera/frame , however document.body.style.backgroundImage remains "" .

I believe you may be missing two things.

var path = 'path/to/image.jpg';
document.body.style.background='url('+path+')';

Canvas 2D to the rescue!

var backgroundImage = new Image();
backgroundImage.onload = function ()
{    
    var canvas = document.getElementById('canvas');
    canvas.width = this.width;
    canvas.height = this.height;

    var canvasContext = canvas.getContext('2d');
    canvasContext.drawImage(this, 0, 0, this.width, this.height);
};

backgroundImage.src = 'camera/frame'; 
backgroundImage.width = $(window).width();
backgroundImage.height = $(window).height();

Loads the image in the background, then draws it into the canvas seamlessly!

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM