因此,尝试完成 KineticJS.Image 教程,但我遇到了一个问题。
这有效:
$(document).ready( function() {
var icon = new Image();
icon.onload = function() {
var stage = new Kinetic.Stage({
container: 'canvas',
width: 730,
height: 700,
});
var layer = new Kinetic.Layer();
var im = new Kinetic.Image({
x: -14,
y: -13,
image: icon,
width: 30,
height: 30
});
layer.add(im);
stage.add(layer);
};
icon.src = '#{asset_path "icons.png"}';
});
这与教程代码非常接近,但没有:
$(document).ready( function() {
var stage = new Kinetic.Stage({
container: 'targetCanvas',
width: 730,
height: 700,
});
var layer = new Kinetic.Layer();
var icon = new Image();
icon.onload = function() {
var im = new Kinetic.Image({
image: icon,
width: 30,
height: 30,
});
layer.add(im);
stage.add(layer);
};
icon.src = '#{asset_path "designer_icons.png"}';
});
它抛出:
Uncaught TypeError: Object #<Object> has no method '_addId' kinetic.js:28
Kinetic.Container.add
Kinetic.Stage.add
icon.onload
我的环境中可能有一些严重的问题,因为这是一个项目的严重黑客工作(Rails w/Backbone、Require、Bootstrap 和 Kinetic),而且我真的不知道 javascript 或各种库,所以我我在黑暗中摸索着。
任何想法是什么导致了这个以及如何解决它?