Я создаю пользовательский jQuery UI Widget для корпоративного проекта, где мне нужно рисовать вертикальные линии по 2-осевому прокручиваемому масштабу. Это то, что я сейчас использую, из того, что я нашел "лучшей практикой":
var tick = this.eventsPaper.path("M" + x + ",0L" + x + "," + this._height).attr({
stroke: this.options.eventsForeground
})s
На этих eventsPaper
- это события, которые могут быть вставлены и удалены, и при этом может изменить вертикальный (т. this._height
) документ событий, необходимый для отображения всех событий.
Прямо сейчас, я очищаю все строки и перерисовывая их каждый раз, когда меняются изменения высоты, но я бы хотел оптимизировать эту часть, просто изменив размер вертикальных линий.
Благодарю.
Большинство UA будут быстрее, если вы не воссоздаете линии.
Скажем, что ваш элемент - это что-то вроде этого...
<path id="path1" d="M5,0L5,10"/>
так
var path = document.getElementById("path1");
var start = path.pathSegList.getItem(0);
var end = path.pathSegList.getItem(1);
// and now you can do things like this...
start.y = 20;
end.y += 50;