Javascript HTML5画布中未显示的图像

Javascript HTML5画布中未显示的图像,javascript,html,css,html5-canvas,Javascript,Html,Css,Html5 Canvas,我试图用画布为我的网站制作背景。代码在这里:。渐变正在显示,但重复图像没有显示。有人能帮我找出图像不工作的原因吗?有两个问题: 您需要将画布放在图像“onload”处理程序内的页面上。当前,您正在加载图像之前执行此操作。换句话说,在设置后台的代码运行之后,才会调用处理程序 即使你这样做,它也不会工作,因为浏览器会认为访问来自不同域的图像的位是一个安全错误。 这并不能回答这个问题 老实说,我对canvas知之甚少,但假设您添加的图像看起来像静态的,请尝试添加document.body.append

我试图用画布为我的网站制作背景。代码在这里:。渐变正在显示,但重复图像没有显示。有人能帮我找出图像不工作的原因吗?

有两个问题:

  • 您需要将画布放在图像“onload”处理程序内的页面上。当前,您正在加载图像之前执行此操作。换句话说,在设置后台的代码运行之后,才会调用处理程序
  • 即使你这样做,它也不会工作,因为浏览器会认为访问来自不同域的图像的位是一个安全错误。 这并不能回答这个问题

    老实说,我对canvas知之甚少,但假设您添加的图像看起来像静态的,请尝试添加document.body.appendChild(canvas)

    从未见过将该对象添加到DOM,所以值得一试吗


    修改

    您需要的是-webkit画布(mycanvas)

    这里有一个例子:

    我在这里制作了一个工作版本:


    是的,这就是我要说的。这将显示画布,但不会作为
    的“背景”。我想它可能是绝对定位的,但如果调整页面大小,它将无法适应。(再说一次,如果它是背景图像时要重复,不清楚为什么通过画布显示图像有任何意义!)没错,在op的问题中没有提到这一点。你能做些什么,比如把z-index设置成一个荒谬的负数,然后把它破解吗?把我的答案编辑成(我认为是正确的),留下原始的评论,让Pointy的评论有意义。图片实际上是本地的。我只是上传了它,这样它就可以在jsfiddle.Ah上工作了。如果图像在您的域中,那么它(可能)会工作。只需将该代码放在“onload”处理程序中设置图像源的点之后。