#javascript #jquery
#javascript #jquery
Вопрос:
В устаревшем приложении у меня есть таблица, в которой изначально отображается только подмножество доступных строк, чтобы соответствовать текущему размеру страницы. Когда пользователь прокручивает div, содержащий таблицу, автоматически добавляются новые строки с помощью javascript.
Что мне нужно сделать, так это иметь возможность перехватывать, когда эти строки добавляются в таблицу.
Вначале я проводил опрос с помощью метода setInterval, чтобы выполнить свою логику, но, к сожалению, это мешает бизнес-логике устаревшего приложения.
Я попробовал следующий код (примененный один раз к контейнеру div и один раз к таблице) без каких-либо результатов:
$(document).ready(function()
{
$('#myWebGrid1').change(function()
{
alert('changed!');
});
});
Я попробовал также метод resize (), но он тоже не работает, так как при прокрутке размер div не изменяется.
Комментарии:
1. какую вспомогательную функцию прокрутки вы используете или создали? Может быть, вы могли бы реализовать некоторый обратный вызов при добавлении новых строк?
2. Можете ли вы опубликовать код javascript / jquery, в котором определено добавление строк? Я думаю, вы можете перехватить там, непосредственно перед созданием новых строк.
3. Я не использую никакого помощника прокрутки, эта логика и код являются частью устаревшего приложения. @iTypist: Я не вижу функцию javascript. Я пытался с помощью fiddler использовать имена файлов .js, поскольку импортировано множество внешних файлов, но поскольку веб-сайт работает по протоколу SSL, я не получаю полезной информации. Вот почему я пытался внедрить свою логику поверх этого.
Ответ №1:
Я думаю, что единственный вариант, который у вас есть, это использовать старый плагин livequery, который допускал нечто подобное (или вы могли бы скопировать логику, используемую этим плагином), как вы можете видеть из этой статьи
Комментарии:
1. 1 — Спасибо за статью, я постараюсь извлечь из нее какую-нибудь подсказку.
Ответ №2:
К сожалению, при изменении DOM не возникает никаких событий. Решением здесь было бы вручную вызвать событие в коде, которое вызывает обновление DOM, для которого вы можете добавить прослушиватель где-нибудь еще в вашем коде.