Ниже приведен простой код. Когда кто-то нажимает кнопку, он нарисовывает изображение, которое может быть изменено или изменено, и движется
Ниже код работает нормально, но если я переведу свой Java-скрипт над тегом холста в моей голове, тег
Ниже сценария src = https://ajax.googleapis .. ....
код внезапно перестает работать
любопытно, как к тому, что триггер это событие, и как ее решитьСценарий Jquery не загружается должным образом
кОД:
<head>
<meta charset="utf-8">
<title>fabric.js-simple text display</title>
<!-- Get version 1.1.0 of Fabric.js from CDN -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/1.1.0/fabric.all.min.js" ></script>
<!-- Get the highest 1.X version of jQuery from CDN. Required for ready() function. -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<body>
<!-- A canvas tag is required or
Fabric.js doesn't know where to draw. -->
<canvas id="myCanvas" height=600 width=800></canvas>
<input id="addStuff" type="button" value="Add!" />
</body>
<script>
var canvas = new fabric.Canvas('myCanvas');
var ctx = canvas.getContext("2d");
$(function(){
$('#addStuff').on('click', function(e) {
fabric.Image.fromURL('http://i.imgur.com/a47Yxsb.png', function(oImg) {
oImg.scaleToWidth(90);
oImg.left=50;
oImg.top = 50;
canvas.add(oImg);
});
});
});
</script>
</head>
</html>
Это частично неверно. Проблема заключается в двух строках перед оператором jQuery, который аналогичен тому, который вы предлагаете в качестве решения (cfr [jQuery manual] (http://api.jquery.com/ready/)), но проблема действительно из-за ссылки на элементы DOM, которые еще не загружены, если этот код был помещен поверх страницы. –
m уже использует $ (function(), который равен $ (document) .ready (function() Я думаю, что у bartdude есть точка, я попробую это –
ах, да, вы совершенно правы, это было скорее мозговой пердит на примере кода, чем что-либо еще. Рад, что вы получили свой ответ, отредактируете ради точности – krischan