Я хотел бы знать, есть ли событие jQuery, которое я могу использовать, чтобы определить, когда изменилось конкретное свойство DIV top.
Например, у меня есть невидимый контент над DIV. Когда это содержимое становится видимым, DIV сдвигается вниз. Я хотел бы зафиксировать это событие, а затем использовать функцию offset() для получения координат X / Y.
@Sam Dutton - Нет. Мое решение состояло в том, чтобы переосмыслить некоторые элементы макета и структуры страницы. Все становилось слишком сложным.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Я думаю, вы должны уметь:
$(document).ready( function (){
$("#mydiv").bind("movestart", function (){ ...remember start position... });
$("#mydiv").bind("moveend", function (){ ...calculate offsets etc... });
});
с другой стороны, это может быть невозможно для относительно расположенных элементов
Что это за события movestart и moveend? plugins.jquery.com/event.move? В этом случае кажется, что эти события связаны с касанием и перемещениями мыши, а не обязательно с произвольными изменениями положения элементов.
Простой ответ заключается в том, что в DOM нет событий для обнаружения обновлений макета.
У вас есть пара вариантов, как я это вижу:
Опрос, неприятный, но он может сработать в зависимости от ваших требований к частоте обновления.
Нажмите на любое событие, которое заставит невидимый DIV изменить размер, и сделайте все, что вам нужно, в этом обработчике.
Я поправлюсь.
Я взглянул на DOM, заметил событие DOMAttrModified и нашел этот Подключаемый модуль JQuery, который вы могли бы использовать, чтобы делать то, что хотите.
Как упоминается в статье, он отлично работает в IE и Firefox, но, похоже, имеет проблемы в WebKit.
Я не думаю, что связанный с ним плагин будет работать в случае OP. Насколько я понимаю, событие DOMAttrModified срабатывает только тогда, когда атрибут изменяется скриптом, а не после изменения, на которое ссылается OP. Однако событие propertychange сработает (я думаю) в обоих случаях: help.dottoro.com/ljdchxcl.php
Обратите внимание, что решение Рика также использует опрос, что означает, что у вас в основном есть компромисс между тем, что выглядит гладким, и отсутствием ненужного прожигания процессора.
$("#someId").resize(function () {
// your code
});
это ничего не делает.
Вы когда-нибудь находили решение этой проблемы?