Quiero permitir que todos los objetos del lienzo de tela se detecten al mover el mouse, pero no se pueden hacer clic ni seleccionar.
if (isHoverMode == true) { canvas.selection = false canvas.skipTargetFind = true // <-this cause object could be selectable! canvas.on('mouse:over', function(e) { // do something on e.target ... }); } Resulta que canvas.skipTargetFind debe establecerse en verdadero para que el evento mouse:over funcione. Pero entonces los objetos también podrían ser seleccionados.
¿Cómo podría evitar que el objeto sea seleccionable?
La propiedad del objeto que está buscando es selectable .
Úselo así para un solo objeto:
obj.set('selectable', false);O así para todos los objetos:
fabric.Object.prototype.selectable = false;Consulte http://fabricjs.com/docs/fabric.Object.html#selectable