var app = angular.module('plunker', []);
app.controller('MainCtrl', function($scope) {
$scope.name = 'World';
});
<!DOCTYPE html>
<html ng-app="plunker">
<head>
<meta charset="utf-8" />
<title>AngularJS Plunker</title>
<script>document.write('<base href="' + document.location + '" />');</script>
<link rel="stylesheet" href="style.css" />
<script data-require="angular.js@1.3.x" src="https://code.angularjs.org/1.3.12/angular.js" data-semver="1.3.12"></script>
<script src="app.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/EaselJS/0.8.0/easeljs.min.js"></script>
</head>
<body ng-controller="MainCtrl">
<canvas id="testCanvas" width="960" height="400"></canvas>
<script src="create.js"></script>
<a href="http://createjs.com/#!/Demos/EaselJS/Drag-And-Drop">http://createjs.com/#!/Demos/EaselJS/Drag-And-Drop</a>
</body>
</html>
/* Put your css in here */
(function() {
var canvas, stage;
var mouseTarget; // the display object currently under the mouse, or being dragged
var dragStarted; // indicates whether we are currently in a drag operation
var offset;
var update = true;
function init() {
// create stage and point it to the canvas:
canvas = document.getElementById("testCanvas");
stage = new createjs.Stage(canvas);
// enable touch interactions if supported on the current device:
createjs.Touch.enable(stage);
// enabled mouse over / out events
stage.enableMouseOver(10);
stage.mouseMoveOutside = true; // keep tracking the mouse even when it leaves the canvas
// load the source image:
var image = new Image();
image.src = "data:image/png;base64,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";
image.onload = handleImageLoad;
}
function stop() {
createjs.Ticker.removeEventListener("tick", tick);
}
function handleImageLoad(event) {
var image = event.target;
var bitmap;
var container = new createjs.Container();
stage.addChild(container);
// create and populate the screen with random daisies:
for (var i = 0; i < 100; i++) {
bitmap = new createjs.Bitmap(image);
container.addChild(bitmap);
bitmap.x = canvas.width * Math.random() | 0;
bitmap.y = canvas.height * Math.random() | 0;
bitmap.rotation = 360 * Math.random() | 0;
bitmap.regX = bitmap.image.width / 2 | 0;
bitmap.regY = bitmap.image.height / 2 | 0;
bitmap.scaleX = bitmap.scaleY = bitmap.scale = Math.random() * 0.4 + 0.6;
bitmap.name = "bmp_" + i;
bitmap.cursor = "pointer";
// using "on" binds the listener to the scope of the currentTarget by default
// in this case that means it executes in the scope of the button.
bitmap.on("mousedown", function(evt) {
this.parent.addChild(this);
this.offset = {
x: this.x - evt.stageX,
y: this.y - evt.stageY
};
});
// the pressmove event is dispatched when the mouse moves after a mousedown on the target until the mouse is released.
bitmap.on("pressmove", function(evt) {
this.x = evt.stageX + this.offset.x;
this.y = evt.stageY + this.offset.y;
// indicate that the stage should be updated on the next tick:
update = true;
});
bitmap.on("rollover", function(evt) {
this.scaleX = this.scaleY = this.scale * 1.2;
update = true;
});
bitmap.on("rollout", function(evt) {
this.scaleX = this.scaleY = this.scale;
update = true;
});
}
createjs.Ticker.addEventListener("tick", tick);
}
function tick(event) {
// this set makes it so the stage only re-renders when an event handler indicates a change has happened.
if (update) {
update = false; // only update once
stage.update(event);
}
}
init();
})();