$scope.ctrlstartDragging = function(id) {
var book = document.getElementById(id);
var domRect = book.getBoundingClientRect();
book.style.position = 'fixed';
book.style.top = domRect.top + 'px';
book.style.left = domRect.left + 'px';
book.style.width=(domRect.width) + 'px';
};
$scope.ctrlendDragging = function(id) {
var book = document.getElementById(id);
book.style.position = 'relative';
book.style.top = 'unset';
book.style.left = 'unset';
book.style.width='unset';
};
когда я очищаю поиск ввода после применения фильтра к внешним событиям, последнее добавленное событие в календаре поднимается вверх (как если бы $ scope.ctrlstartDragging = function (id) по-прежнему применяется немедленно и автоматическина нем (последнее добавленное событие в календаре).
для воспроизведения (ссылка codePen внизу):
1 - перетащите в календарь событие 4
2- найти событие 111 из входного поиска
3 - перетащить в календарь событие 111, найденное фильтром
4 - очистить фильтр вручную или нажав кнопку очистки
, как вы можете видеть, последнее добавленное в календарь событие 111 поднимается наверх.
, чего не должно быть, следует реинтегрировать в список.
Функция ondragstart => $ scope.ctrlstartDragging = (id) все еще работает с этим событием, а функция ondragend => $ scope.ctrlendDragging = function (id) - не запущено .
и отображаетсябольше проблемаm:
1 - обновить браузер
2 - снять флажок Удалить после перетаскивания
3 - перетащить любое событие в календарь
какВы можете видеть, что последнее пропущенное событие в календаре поднимается в верхнюю часть окна внешних событий.
Мой вопрос заключается в том, как запустить ctrlendDragging и unset / reset (стили CSS css вверху слева)книгу, чтобы вернуться к своим первым основным стилям CSS, прежде чем мы начнем какое-либо перетаскивание или перемещение?
codePen
относящиеся:
SO Q1 SO Q2
большое спасибо.