Prevent Hover state save
I want to prevent save to json the state of the over
by STHayden
HTML
<script src="htts://cdnjs.cloudflare.com/ajax/libs/fabric.js/1.6.6/fabric.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/1.6.6/fabric.min.js"></script>
<canvas id="canvas"></canvas>
JavaScript
var canvas = new fabric.Canvas('canvas', {
perPixelTargetFind: true
});
canvas.on("mouse:down", function(event) {
var state = canvas.toJSON();
state.objects.forEach(o => {
if (o.trueColor) {
o.fill = o.trueColor;
delete o.trueColor;
}
})
console.log(state);
});
//click on the rect to see that the color red is saved in the json
//shown in the console log, but i want the original State, the red fill
canvas.on("mouse:over", function(event) {
if ("target" in event) {
color = event.target.fill;
event.target.fill = "red";
event.target.trueColor = color;
canvas.renderAll();
}
});
canvas.on("mouse:out", function(event) {
if ("target" in event) {
event.target.fill = event.target.trueColor;
canvas.renderAll();
}
});
var rect = new fabric.Rect({
left: 100,
top: 100,
fill: 'blue',
width: 20,
height: 20,
angle: 45
});
canvas.add(rect);