Отображение балунов в цикле на плане домов
Добрый день. Прошу помощи. Имеется цикл в который передаются объекты неких новостроек (дома) которые отображаются на плане.
for (var house_pos in paths_plan) { var obj = r1.path(paths_plan[house_pos].path); let attr = attributes; arr[obj.id] = house_pos; var hover_status = paths_plan[arr[obj.id]].status; var house = paths_plan[arr[obj.id]].house; switch (hover_status) { case 1: attr.fill = house_status_1 /*тут идет балун*/ $(".plan_baloon").removeClass("sold").removeClass("booked").addClass("free"); $(".plan_baloon").attr("id", "house_" + house); $(".plan_baloon").text("№" + house); break case 2: attr.fill = false break case 3: attr.fill = false break } Прошу помочь сделать отображение балунов над всеми домами. То есть те дома у которых hover_status === 1 должны иметь сверху балун. У меня всегда отображается только один. Я так понимаю он последний элемент в массиве. Если же сделаю подобное но с hover то есть показать балун при наведении мышки на дом, тут все нормально. Но мне нужно что бы балуны были статично всегда над теми домами что имеют hover_status === 1. Вот так с hover: switch (hover_status) { case 1: attr.fill = house_status_1 obj.hover(function () { var house = paths_plan[arr[this.id]].house; var hover_status = paths_plan[arr[this.id]].status; if (hover_status == 1) { this.animate({ fill: house_status_1 }, 10); $(".plan_baloon").removeClass("sold").removeClass("booked").addClass("free"); $(".plan_baloon").attr("id", "house_" + house); $(".plan_baloon").text("№" + house); console.log("house_" + house); } else if (hover_status == 2) { this.animate({ fill: house_status_2 }, 10); $(".plan_baloon").removeClass("free").removeClass("booked").addClass("sold"); $(".plan_baloon").attr("id", "house_" + house); $(".plan_baloon").text("№" + house); console.log("house_" + house); } else if (hover_status == 3) { this.animate({ fill: house_status_3 }, 10); $(".plan_baloon").removeClass("sold").removeClass("free").addClass("booked"); $(".plan_baloon").attr("id", "house_" + house); $(".plan_baloon").text("№" + house); console.log("house_" + house); } }) break case 2: attr.fill = false break case 3: attr.fill = false break } |
Часовой пояс GMT +3, время: 22:21. |