问题
I have a canvas and it includes fabric objects.I want to do opacity slider for text area's backround "textbackroundColor" in canvas.How can I do slide and change functions?
$("#backgroundOpacity").slider( {
min: 10,
max: 50,
value: 30,
slide: text_bgColor_slider_moved,
change: text_bgColor_slider_changed
});
回答1:
first get active object of canvas
var activeObject = canvas.getActiveObject();
and then
$("#backgroundOpacity").slider( {
max : 100,
value : activeObject.opacity * 100,
slide: function (event, ui) {
activeObject.setOpacity(ui.value / 100);
canvas.renderAll();
},
stop : function (event, ui) {
canvas.renderAll();
}
});
回答2:
Another way, via a range input coupled with $(document).on
$(document).on("change", "#alpha", function () {
transval = $(this).val();
var obj = canvas.getActiveObject();
obj.set({
opacity: transval
});
canvas.renderAll();
});
来源:https://stackoverflow.com/questions/28813552/opacity-slider-for-a-fabric-object