【问题标题】:error when trying to load image尝试加载图像时出错
【发布时间】:2013-02-23 19:26:50
【问题描述】:

你好 stackoverflow 社区

我是 KineticJS 的新手,在将图像加载到画布元素时遇到了一些问题。 如果我运行我的小 sn-p,我会收到此错误:

TypeError:值无法转换为以下任何一种:HTMLImageElement、HTMLCanvasElement、HTMLVideoElement。

但是我怎样才能把它转换成需要的类型呢?

它的完整代码:

<!DOCTYPE HTML>
<html>
 <head>
 </head>
 <body>
  <div id="container"></div>
  <script src="kinetic-v4.3.1.min.js"></script>
  <script>

  var dia_bg = new Image();
  var dia_bg.src = 'http://www.m133.wallerdeknaller.ch/script/dia_img/bg_diagramm.jpg';

  dia_bg.onload = function() {
   var stage = new Kinetic.Stage({
    container: 'container',
    width: 578,
    height: 200
   });

   var layer = new Kinetic.Layer();

   var test = new Kinetic.Rect({
    x: 220,
    y: 50,
    width: 200,
    height: 100,
    fillPatternImage: dia_bg.src,
   });

   layer.add(test);
   stage.add(layer);
  }
  </script>
 </body>
</html>

感谢您的帮助。

【问题讨论】:

    标签: javascript html canvas kineticjs


    【解决方案1】:
    1. 您不需要使用var 来设置对象的属性。去掉你设置dia_bg.srcvar
    2. fillPatternImage: dia_bg.src 更改为fillPatternImage: dia_bg

    它正在发挥作用:http://jsfiddle.net/kcSWA/

    【讨论】:

    • 如此简单的解决方案...谢谢!
    猜你喜欢
    • 2019-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-14
    • 2014-01-30
    • 2021-05-19
    • 2017-06-16
    相关资源
    最近更新 更多